-- ShaiRevzen? - 08 Jul 2003

The SprawlOS presentation is now online on the BioMemetics server.

As a quick review, SprawlOS is good for any task where you plan to have to do a lot of tweaking of the robot control code, but you are still working mostly stride-to-stride. Some of the advantages of using SprawlOS are:

  • Simple and readable C code. Someone else might actually be able to read it...
  • Does lots of things for you (e.g. gait cycle scheduling)
  • Allows you to write host-side controller code
  • Had a simulator you can run on any Linux / Mac OS-X box, so you can develop code without a robot

-- ShaiRevzen? - 04 Aug 2003

Alpha 0.7 ready

After a long inception period, SprawlOS code is finally reaching the stage where other people can see it without qualifying me for a shower of over-ripe vegtables. This also means that I will start adding some SprawlOS How-Tos to this page.


Using SprawOS XCG

The XCG module in SprawOS allows structures to be exchanged easily and transparently beween code running in the robot and Python scripts on a host platform. NOTE: the XCG host need not run on a machine that is physically connected to the robot. The following robot-side code illustrates how a structure is shared, and modified by the host:

Robot (in C) Host (in Python)
#include "Exchange.h"

...code...

struct MyRecord {
  int anInt;
  char aString [10];
  unsigned char aByte;
};

struct MyRecord global_rec;

void main( void ) {
  ...standard initializtion stuff...  

  XCG_EXPORT_RW( "rec:i10sB", global_rec );

  ...standard main loop...
}
import XCG

Robot = XCG.XCG()
anInt, aString, aByte = Robot['rec']
Robot['rec'] = anInt + 137, aString, aByte

Which leaves only one real question: why 137 ?
But this question has plagued physicists for many years...

 
This site is powered by the TWiki collaboration platformCopyright &© by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback