Surveyor Robotics Journal |
|||||
|
Surveyor Corporation home page
Subscribe to a syndicated RSS feed. Archives |
Wed, 20 Dec 2006 C interpreter for SRV-1 We're a few days away from wrapping up a version of firmware that includes a C interpreter running onboard the robot. This will be similar in structure to our BASIC interpreter, with a set of built-in robot-specific functions for motion control, IR, timing, image capture, color management, and image processing (like the functions we added to BASIC). The C language itself is interpreted, so you just store the program source code in the flash memory and issue a command to run the program. I believe our C implementation is comparable in functionality to RobotC or InteractiveC, though I haven't looked at a full specification for those languages - we don't have complex data structures, but we do have a reasonable set of flow control commands (if, else, for, do, while, return), nested loops, nested function calls, etc. At this point, we're not going to try to fit both BASIC and C into the same firmware image, so we will provide 2 versions of SRV-1 firmware - one with BASIC and one with C. From a coding standpoint, this isn't an issue, as there is a simple #ifdef in the source code to select between the languages, and all other aspects of the SRV-1 functionality will be identical between the two versions. I'm personally pretty excited about this addition, as it should be quite helpful for users to have familiar language options like C and BASIC for onboard scripting of autonomous robot behaviors in addition to the host-based tools that are adding SRV-1 support (e.g. Microsoft Robotics Studio, Pryo, Webots, URBI, Player, SRV1Console, etc). Once this code release is complete, we will focus some energy on providing some sample onboard programs in C and BASIC for various functions, including the wander mode, object location and object tracking. Posted Wed, 20 Dec 2006 18:45 | HTML Link | see additional stories ... |
||||