Final version of feedback controls project
sort of works, does the 45 line correctly.
Control code added, not tested
removed circle and made border thinner in world.txt
update world.txt with screenshots
Server code does forward kinematic calculations
sending velocity instead of raw encoder values
small changes to spline server code
Encoder code for server added
Server code updated to handle velocity, untested
Parallelized Master and Server
Fast Slave, Working
server and master code sort of working
spline server and master
Added server and master code to spline behavior
move spline slave to sub-directory and update encoder_get_v function
create spline behavior for controls project
Able to read and draw circles in the environment
Hopefully final fix for circles
Paren fixes for circles
Even more updates to circles
More fixes for circles
Hopefully unbroke simulator with circles
Commented out code that broke simulator
Added circle collisions
fixed compiler warnings by including library files
it's slightly better
Measured timingFixed interrupt handler bug
Fixed synchronizationTested robustness
Cleaned up lights.hImplemented predefined color settingImplemented binary/PWM mode switching
moved the smart-runaround stuff from template to a new folder and restored the old templateimplemented usb_put* which just outputs to stdio
actually found a bug in smar run around using the simulator where the omega is > 255, which causes the robot in the simulator to stop moving.
Also added a hack to make the robot start at a non-90 degree angle
Added library for wireless
Saved 53%-62% processor time on orbs sorting
The server code.
Added server code.
Smart run around mostly works!!!
Thanks to Brian for fixing a bug in motion codedivide by 0 zero error in motion.c
Makefile cleans .csim and copy it over
GUI no longer fill the robot
changed the sigchld handler to only wait on robot proc's so that it doesn't try to wait on gui things
Polished file. Added includes
Bugfix: Orbs not turned off at the beginning of the PWM cycle.
Added atomic.h from the avr_libc (according to the documentation, it should be in the avr_libc distribution, but it seems to be missing)
Implemented triple bufferingOptimized sorting
Fixed timingProfiled sorting
Implemented lights sorting, interrupt handlers
Basic orb PWM functionality on Timer0
added some vague file type checking to prevent running simulator in simulatorupdated the makefile to make simulator executable filenames end in .csim
cleanup on robot exit
Test code to clarify timer operationCreated data structures
simulating rangefinder and smart run around
changed the position of IR sensors defined in libsimlibsim and libdragonfly use different numbering for IRs (#418, #419)added smart_run_around to template, right now it just hits wall, backs up then segfaults
slowed down motion and hacked more crap
allow rotation while stuck
awful hack for collisions that appears to work
Can now move robots with the GUI, deletion built into GUI but doesn't work in the backend.
Added code for circles in environment. Still needs to be tested
Fixed whitespace at the end of eeprom.hImplemented binary orb settings
Reorganized coordinate transforms in the GUI.
Added code for communication between a computer and the USB hub.
Added functions for printing hexadecimal numbers to USB, see serial.h
Prepared the library for refactoring- Added a library_test behavior (general testing playground)- Modified projects/libdragonfly/Makefile and behaviors/library_test/Makefile because there is no code directory in this branch
Robots drawn to scale.
Branch for the library fixes
Pretty single check box added for paused robots.
Can run with no robots.
Fixed race condition for adding robots?
speed now takes negative values
Can now add robots through the GUI.
Brad Neuman forgot to add the word "void" in simulator_do();
Switched to loop based suspending on the robots using simulator_do
now runs much better for the stupid template sample
Deleted random files in top level directory.
Added replay functionality and command line arguments
-l <filename> log simulation to file [currently make sure file does not exist, overwriting of files not handled well]
-p <filename> run a log file rather than simulation
-w <filename> load in world file
Made some additions to rayHits.c
Not really useful, just for me
Fixed race condition in GUI, hopefully.
Cleaned up code, removed all compiler warnings.
added some error checking
Removed Diagnostic Station Branch. It will be placed into the Trunk.
sped up simulator!
changed the delay to be less and removed spamming of printfs from world.c
Added file to check for collisions with circles
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