Updated with fixes to bom.c
only newline differences
Fixed some errors due to BOM being used instead of BOM10
Added code used to turn on BOM LEDs to test the current through the BOM LEDs.
Robots now draw in correct location.
rangefinders are in fact working now
Draws polygons in the environment.
small chnage to motion.c, going forward and backwards should now be consistent
added a sample world, updated main to load the sample world
added update_rangefinders, which should be enough for the demo tomorrow
max_objs is not an argument of load_world. Remove starts_with
started working on integrating with rangefinders
load world from input file, changed create poly to take an array of doubles
added some functions to initialize the world. still needs a lot of work
works with 20 robots! but its incredibly slow and destroys computersalso fixed a bug in the robot creation code (it didn't init robots array to -1 after a resize)
update to libsim.a to include BOM
added BOM to libsim and shared library
Updated Makefile for Diagnostic Station directory. Now have compilable code which can be successfully downloaded to turn on 1 orb light!
Added newline at the end of the file. Take that, gcc.
pictures of environments for test 4-7
Having trouble with wireless (I think) hopefully this will work by friday.
Cleaned up Diagnostic Station folder.
tested a bunch of different environments for mapping
Switched wl_init and wl_set_com_port in test.c (again?)
Changes all around. Matlab server is now passive, might work soon.
use abs in stdlib instead of a crappy macro
working ray-polygon collisions, but needs a lot of clean up
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.