CAD model of the diagnostic station
Early test results for mapping.
added thing to program eeprom BOM ids and robot id over usb
completed skeleton for the environment
world header file, with type definitions
Now runs at a reasonable speed.
Theta changes now.
Added the data files for real this time
Ran some tests in different environments. Data is in 1, 2, 3.txt
calls to wl_init() and wl_set_com_port() were inverted
made a copy
Uploaded empty folder when wanted to copy code folder.
Created folder remotely
theta in motors should change now
Forgot to commit header file.
Motion works, but needs fine tuning.
Fixed bug in iterator.
libsim rangefinders works with shared memory now
get rid of the draw_funcs stuff.
Threading issues worked out better... Ready to add motion.
test takes an argument for the USB port #, but it doesn't commit a memory error like it did last time I committed
test now takes a second argument for the USB port number
Rangefinder now have normalized random noise!
gaussian noise now has a gauss_init to initialize with a seed and chaos scalar
the function move will now update the position of the robot and its theta. This can be merged into libsim once tested
working gaussian nosie function: gauss_noise()
Started on drawing robots in the right place.
fixed the environment variable stuff
getenv should worksome commented code uncommented
Fixed makefile includes.
Free's shared memory in the core file upon error in forking or error in attaching to shared memory
I hope this works
library motor code
when Andrew's memory code is uncommented, uncomment the code in this file
Renamed second core directory to test, slated for deletion.
Refactored simulator, set some stuff up to work with multiple robots.
Including common directory in commit
moved stuff from robot_test into libsim.clibsim now contains the timer (pause/resume) stuff
Also commented andrew's code because it broke the build
ticket #159:main() is just for testingno working code yet just comments, still need to figure out the math
Function to free memory added, not sure how to test if its working.
Fixed initialization of simulators struct
Added shared memory setup code to the create_robot function. Need to write the cleanup code still. Exec call is failing but wasn't succeeding before code change either.
Added signal handling code to core simulator
added a robot_test directory which contiains code to run the timer and deal with the robot side signaling. To compile it you need to run gcc robot_test/robot.c -o robot_test/robot. This whole file is temporary. It is just proof of concept until it gets added to the simulator library
sorry...didn't mean to commit odometry.c
minor changes to remote control / mapping code...wireless control works with libwireless reverted to rev. 887. code in odometry interrupt conflicts with motors, not allowing the robot to move motors in response to commands.
added a draw_funcs.c/h, functions need to draw stuff should go there. added a basic function used to draw robot with x, y, orientation.
added robot shared memory id to simulator structure
test again. nothing is changed
test commit
Draws circle and square.
Ooops, forgot to commit main method.
update to robot shared header
GUI now compiles.
Wrote some code to test wireless communication between the computer andthe robot. Right now, it doesn't work.
now it will work
Small changes - new file just waits for packets to bufferfor matlab, so the robots will decide when to send theirdata in this version.
Cleaned up test.c and robot_main.c in mapping.
added some structs to the common header file
Minor modifications and fixes. Haven't gotten it to work yet.
Added beginning GUI code, does not compile.
added tests of two possible ways to control proc's.
leaning heavily towards the itimer method
Small changes and comments.
Changed receive to work when there's no data,haven't tested for when there is,test.c works as expected,Makefile modified to work on receive.c on a linux machine with matlab.testing robots pending - not hopeful - see code.
added test for motors. it just runs the left and right. this can be improved.
Slight corrections to this file. I have no wayof testing without a computer with matlab/linux.
If anyone knows windows threading I'd be much obliged. Alternatively, if anyone knows if thereis an accessible build of gcc higher then version 4 on andrew unix let me know.
Made some modifications for testing in the main loop
Some changes in I2C testing in the main loop
Just some test code to see how concurrency works in matlab functions.
Added some test code for the receive function - does not work asI can't get the token ring to start up. receive.c needs to be ona matlab computer to be compiled and run correctly (mex receive.c -lpthread)
Wrote mex file code to interface between matlab and the wireless library.
testing commit on new svn (just template directory)
Updated makefile to compile binaries for simulator.
Added a odometry_velocity function that gives approximate speed of the robot in mm/s.
Added symbolic links to the odometry in mapping to the library, and provided documentation.
Odometry works!!
extension of update to eeprom/bom/init. this is just the include files and the library archive.
Integrated new BOM1.5 compatible code. Also put eeprom code for reading ID and BOM type from EEPROM. will need to program each robot's eeprom separately later. This has been tested and verified to work on robots with different BOM types.
added a test for lights/orbs.
Simulator library compiles.
Simulator library compiles but doesn't do anything.
All library files added, unimplemented.
Prototype JNI (Java Native Interface) for libwireless. Compiles, and java loads the library, but untested with a real scenario or hardware.
added passing of overhead camera image to client through PHPfixed unfreed memory in server/vision/savetonetwork.c
OpenCV now works directly with firewire, coriander is not neededNew vision algorithm integrated, a few issues left with algorithm that tracks the movement of a specific robotRemoved experimental interface to send images over commands socket --plan to use php in webserver instead...
New vision algorithm utilitizing Hough Transform and edge detection instead of the older one using ellipse fitting and thresholding
Incremental update; working on: - new vision algorithm utilizing edge detection instead of thresholding - sending camera images over sockets instead of using the webserver
untested realtime ir plotting
Realtime position plotting
Added unimplemented message to simulator library.
A working server, with debug printing, some mapping capabilitiesPartly for testing
changed xbee packet handling, added more info for unexpected packets
sample maps created by pushing the robot around a table (3 or 4 walls)
Nothing was fixed nothing changed.
updated server-side mapping code (remote control, etc)
added odometry to robot mapping code via symlinks to justin's odometry code
Odometry committed. New version is more general, but still drifts to zero.