Yesterday I bought a LEGO mindstorms set (getting infantil in my old days...). After building the first robot, I want to substitue the RCX by an FPGA. Has anyone done this so far?
Martin
---------------------------------------------- JOP - a Java Processor core for FPGAs:
Why? Do you need microsecond level timing on some control loop?
In general, if you can do the problem in software, it's better to use a uP rather than a FPGA. The developement software is more user friendly. That makes it much faster to try a new idea.
--
The suespammers.org mail server is located in California. So are all my
other mailboxes. Please do not send unsolicited bulk e-mail or unsolicited
What about implementing an hitachi h8 mcu in an fpga? And attach exactly the same external components as in the rcx itself? then you have a "custom" rcx that you can add advanced hardware into. You can create a second microcontroller,statemachine whatever with a number of io/s and you can create som sort of software using the IR send / recv command in the h8 to do communication with second mcu? So that the ir port of the h8 is mapped to both IR and internal mcu-2. Create a protocoll so that you can sort out data packets to / from second mcu or packets that acutally come over IR.
Mean reason: Just for fun ;-) Secondary reason: Get a testbed for some control programming in Java on my Java processor.
I will use the FPGA only for interfaces to the sensor (sigma-delta ADC) and the motor (PWM output with readback of voltage levels during the off time). I will put the schematics for the sensor and motor interface with some VHDL code on a webpage when I got it work.
Martin
--
---------------------------------------------- JOP - a Java Processor core for FPGAs:
It depends how far you want to go w/ your robot. One of the LEGO extension sets includes a Logitech USB Camera. Unfortunately, the camera is connected to the PC via the USB cable (limiting the movemens of your robot), then few pieces of information are sent back to the RCX for robot control.
We can't call really it an autonomous agent, can't we? It would be a better idea to handle the camera directly from the robot itself. You would need a processor to handle the USB protocol stack, but an FPGA would be nice to compute in real-time the images that you capture in order to improve the robot capability to react to what it sees.
In such a case, the processor would indeed offer more flexibility but wouldn't be able to compute the huge amount of data so effiently. Therefore, an approach incl. a processor + an FPGA would be nice.
Yes a camera module on the robot would be nice. I have a simple digital module (M4088 with OmniVision's image sensor OV5017) that I wanted to connect to the FPGA some time ago. I will probably do it now for the LEGO robot ;-)
The camera module I mentioned is far simpler to connect. You don't need an USB stack, just digital signals.
As processor I will use my Java processor inside the FPGA, but the NIOS would also be fine.
Eric, camera wise, you may look at the mindstorm Vision Command. It looks somewhat new on Lego website so I am wondering whether it is on sell already...
do you mean the processor itself or the Java code for the Lego robots? The Java processor is available in VHDL at:
formatting link
For the robot stuff I just started to build the interface to the sensors. I have only a three liner in Java to read out the values, but I will put the schematics and VHDL source on a webpage.
ElectronDepot 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.