Older blog entries for NateW (starting at number 5)

I should have added wheels to the simulator a long time ago. It's approximately 3.9*10^3 times more fun now, give or take an order of magnitude.

The control system has also turned out to be much cooler than I expected. You just create objects like motors and controllers and arithemtic operations, drag them arround on screen, connect them, and you get a control system. It just occurred to me that this could be a pretty cool thing in its own right if it generated, say, PIC code. Hmmm.

I've just uploaded a version of Juice that supports wheeled robots in addition to walking robots. I'm not sure if it will be as useful for wheeled robot design as (I think) it is for legged robot design, but it's kind of fun.

steve had a couple of things to say/ask about my Juice project in the story about snake robots, and I thought I'd answer them here since I haven't done a diary update lately anyhow...

[...] your Juice project looks like an interesting simulator that could come in handy for robot builders.

I hope so - that is the whole reason I started the project. :-)

Does it currently have any mechanism for implementing sensors? For example, could one build a biped robot with a walking algorithm that used a sense of "balance" - perhaps from measuring its inclination or angular velocity or something?

As luck would have it, Juice provides exactly the type of sensor you're looking for, and some of the examples that come with Juice use that feature to balance themselves as they walk. During the simulation, the rotation of any of the 'beams' in the robot's structure can be used as an input to any of the joints in the structure. I tried using sensors based on angular velocity, but the 'virtual pendulum' approach is easier to work with.

Juice does not yet include any other sensors, but I in the not-too-distant future I hope to add support for proximity sensors (for navigation over/around obstacles) and pressure sensors (to help weight distribution while walking).

I look forward to seeing a linux port so I can try it out - and a GNU GPL license so we can hack on it! :)

It'll happen. My first priority is to finish implementing the features I had in mind back when I decided to start this project. There are two reasons I'm keeping the source to myself for the moment, both stemming from the fact that I'm unemployed right now. First, Juice is featured on my resume and I want to be unambiguous about the fact that I wrote everything but the low-level physical simulation math. With a GPLed code base that claim becomes a little bit less compelling, than it already is with a closed code base. Second, I'm having a lot of fun creating this thing. Perhaps this is selfish, but I've been wanting to do this project for a long time, I'm enjoying every minute of it, and I want to see it though to the end just for the satisfaction of creating it on my own. :-)

When I have a full-time job, I won't be so concerned with my resume and I probably won't have the time or energy to keep working at this pace anyhow. At that point, the GPL will be the logical next step. And Linux, too.

I went with Windows for this version because that's where I can be most productive (I have loads of experience here, so I'm already familiar with the tools and APIs), and because that's the environment my future employers are interested in... but I'd really like to see this running on Linux. I built a new Mandrake 8.1 box specifically for the purpose of porting Juice, and I can hardly wait to begin. First things first, though: feature completeness under the OS I started with.

Speaking of features, the latest beta adds a new user interface with which to define the robot's behavior. check it out... I hope to have this stuff stabilized by the end of the week for a production-quality release of version 1.2.

I just came across a very nice collection of robotics links at http://www.machinebrain. com/.

Does anyone know of a good forum for robotics hobbyists? Machinebrain.com has a forum, but it's completely empty.

I just finished uploading a few MPEGs of some of my simulated robots: http ://www.packetgnomes.org/~nathan/video/Juice/

The dinosaur-like biped "Dihno" is the most sophisticated of the bunch, followed closely by the dog. With a joystick they can be commanded to turn as they walk, lean side to side, crouch, and so on.

I am working on a simulator for walking robots. It is specifically intended to aid in the the high-level design of the mechanics and movements (gaits).

At this point, it is possible to create a walking machine from beams and hinges, then animate the machine with simple motions, and steer the machine around under joystick control. It's harder than it sounds, but if it were easy I wouldn't have bothered with the simulator, right? :-)

Click here for details.

It's free software, but it's not yet open source. So far it has been tested on Windows 2k (with much success) and Windows 98 (with limited success).

X
Share this page