Robot programming in Lisp/Scheme

I would like to be able to build a robot from a kit that I can program using Lisp or Scheme (i.e. a mobile, autonomous bot). The options I'm aware of currently are:

1) XS Lisp for Lego MindStorms
formatting link
2) Building a PC based robot so I can use whatever the heck I want to program with. For example, I could use cffi to interface with a C library for sensors, servo controllers, etc.

Does anyone have experience with option 1 - using XS Lisp on Lego MindStorms?

Option 2 would give me more flexibility with respect to development environments, but I think it will be more expensive and the need to have heavier batteries to supply the power a mini-PC would require would add weight and thus size, so I expect I'd be limited to a wheel based bot vs. leg based.

Are there other robot kits available that would provide the ability to run Lisp or Scheme on the robot?

Thanks, Brian

Reply to
Brian Adkins
Loading thread data ...

Reply to
D Herring

One option you can consider is having a small robot that has a wifi interface, so the programming can stay on your PC, and the robot can just have a fairly simple wifi module and a microcontroller to interface to the sensors and actuators.

Later, Jon

-------------------------------------------------------------- Jon Hylands snipped-for-privacy@huv.com

formatting link
Project: Micro Raptor (Small Biped Velociraptor Robot)
formatting link

Reply to
Jon Hylands

Thanks. Do you know of any robot kits that include wifi capability?

Reply to
Brian Adkins

Hi,

I don't know directly of any small robots that support WiFi directly but most have a serial port so you could use an X-Port (or is it Wi-Port) for communication.

Regards Ian Dobson

Home of the Atmel based UDP mobile web cam

formatting link
mails scanned with av-filter.pl (F-Prot / perl)

"Brian Adk>> >>

->>> heavier batteries to supply the power a mini-PC would require would add

->>> weight and thus size, so I expect I'd be limited to a wheel based bot

->>> vs. leg based.

->>

->> One option you can consider is having a small robot that has a wifi

->> interface, so the programming can stay on your PC, and the robot can just

->> have a fairly simple wifi module and a microcontroller to interface to

->> the

->> sensors and actuators.

->

-> Thanks. Do you know of any robot kits that include wifi capability?

->

->>

->> Later,

->> Jon

->>

->> --------------------------------------------------------------

->> Jon Hylands snipped-for-privacy@huv.com

formatting link
>

->> Project: Micro Raptor (Small Biped Velociraptor Robot)

->>

formatting link

Reply to
ian dobson

I don't know of any kits (well, except for the one I'm putting together, but its a Bioloid-based humanoid), but it wouldn't be all that hard to build one configured that way.

Later, Jon

-------------------------------------------------------------- Jon Hylands snipped-for-privacy@huv.com

formatting link
Project: Micro Raptor (Small Biped Velociraptor Robot)
formatting link

Reply to
Jon Hylands

There are a lot of options in between -- gumstix, palm pilot, small

68k/coldfire boards, etc -- all of which will outperform lego bricks by orders of magnitude, all of which will use less power than a full pc by an order of magnitude, and all of which have scheme/lisp environments available. It really just comes down to how much processing power you really need, and if you're seriously considering lego, a pc is probably overkill.

Think carefully about whether you really want to make your robot dependent on an offboard computer -- I've built "robots" like that before. Sure, it's convenient as hell for programming/debugging, but in a way it's disappointing to go through all that effort and still not have something truly autonomous.

-chris.

MindStorms

formatting link

Reply to
e c kern

MindStorms

formatting link
>

Cool, thanks for the tips. I hadn't come across gumstix, and it looks very interesting.

I'm new to robotics, so I'm still trying to determine appropriate lines of demarcation between the components. I suppose that if the computing unit (microcontroller, Palm, etc.) can speak serial, then that should be sufficient to communicate with a servo controller and sensors, and you can swap out a microcontroller for a Palm device, etc.

Having a stable platform that I can use on multiple robots sounds appealing, so, for example, to use a Palm device and be able to reuse code for a variety of robots (at least higher level functions) would be great. Of course, it would be inconvenient to have to stop the robot to answer an incoming call on my Treo :)

Do you know of companies providing the necessary hardware/software to interface a Palm device with robotics hardware?

The main reason Lego came up was because I discovered the Lisp environment; however, I don't think it works on NXT, so it may not be feasible for me.

Good point. I guess the best of both worlds would be to have the desktop development environment be the same as the on board environment.

Reply to
Brian Adkins

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.