Added Butterworth filtering code.
Woking version
Circle.c in formation control works, but shakily. Some of the best robots can execute the code, but sloppily. More recovery code and error checking code needs to be integrated. Higher level code works. Turning as a group was implemented. This is a relatively stable version of circle.
Added a turn method to the code, which theoretically works now. Circle.c.
Made some slight upgrades to cicle.c, cincluding formatting.
Changed the turning methods to simpler versions which should work more consistently -circle.c
Robots still oscillate while facing in wrong direction
This is broken
Trying to refresh circle aboutFace()
Cleaned up joystickPlayer folder.
Rearranged hunter_prey joystickPlayer file structure.
changed joystick player robot to have dleays between motion states. It's now less responsive but also resets much less
made human tagging easier and added joystick control code from colonet in a subdir of joystickPlayer
Updated the correctTurn method to the more general aboutFace code
Fixed the code so it works again with the restructuring; working on a better turning algorithm.
Restructured the code to include higher-level programming and states devoted to certain actions.
noob mistake: forgot to add files before checking in joystick stuff
update to makefile for Brad
1. added a folder: encoder_censored_forward, which contains a c file that has this function. Still under testing. And cannot control speed well.2. test result files for encoder_get_x() for robots 3,4,5,6.
Documented the circle code extensively. Starting reorganization from procedural to funtion-calling code.
update to makefile for make demo option. now works under linux
updated makefile to new make demo code
Updated circle, trying to fix 3-character packet sending.
Starting to make the circle move as a group.
Still editing counting code in circle.c
Fixed the updated circle code.
Updated circle so the robot counting should be less buggy.
Cut out unused parts of circle.c, organized program, fixed a couple bugs
Fixed circle.c, added comments, tested the program. Added terminal states.
updated makefile to include a 'make demo' option
Fixed a bug with send packet being too small.
Shortened hunter-prey tag distance in john folder. Deleted unnecessary 500 ms delay.
Added code to turn left and right instead of always turning one direction.
Deleted print statement.
Added code to check BOTH encoders for Prey turning instead of just one.
added robot testing code for IR data collection
moved code into computer subdir
Debugged circle.c so approaching works
Added #define to parameterize time to wait after TAG.
fixed not compiling libwireless
More modifications to circle.c
Merged circle code and added comments
update to test cases in trunk
New version of cicle_spacing. (It works now...). Before merging with circle.
This code changed the way that the Edges move toward the Center bot, I stopped using Han Jongs methods and added the methods correctTurn, correctApproach is still not functional, also I changed the color skeem for the orbs, going to center is still buggy.
I think this is John's code
Updated counting robots to work for circle formation. Movement is problematic.
Added diagnostic server stuff.
Small changes.. I definitely wouldn't use this for anything yet.
Added some test files for fixed point math.
Something definitely broke in cosine when I changed to smaller tables (which shouldn't have sacrificed any accuracy). Need to investigate...
Added rangefinders directory to tools.
Added new software for basic analysis of IR data to be used with the IRcycle.c tool. Native Windows build only for the time being.
Getting versions of circle.c in sync
Added comments and minor changes to circle.c
Removing the old circle-circle2 versions of the code (2)
Removing the old circle-circle2 versions of the code
removed .a library files from the repository. These will be automatically generated by the Makefile now
Included working functionality for Beacon to get acks from each robot.
Implementation of exponential. Not tested, don't even know if it works at all.
Cut the trig table sizes in 4 w/ symmetry, etc.
Lazy implementations of sine and tangent (that justuse cosine indirectly).
Addressed edge cases.
Needs EXTENSIVE testing to get a good grip on error bounds.
Clarified description of the usrBOMvals variable for the bom_get_vector() funcions.
Tried to use bom_get_vector instead of bom_get_max.It works for the master (still need works), not for the slave (still need to figure out why)
Initial pass at a 32-bit fixed point library.
- Generated cosine / sine tables, put them in PROGMEM
- Wrote initial quadratic interpolation cosine function. ... not safe to use yet, but it seems to work for non-edge cases. Need to write a better way to test it.
Working scheduler.
Booyakasha.
svn is being wonky...
Changes to the scheduler, still doesn't work.avr-gcc has its own convention for saving stateon entry and exit that's the same every time, soI lean on this now to restore the context.
I think that it's very close, my guess is that when new tasks are launched, RETI is ...
working version of wednesday 18 nov
Cleaning up ir_branch to Make correctly.
Fixed beacon robot wireless and working on Edge robot wireless
Fixing tools to Make correctly in Trunk. Reorganizing ir_branch to Make correctly.
changes of wednesday 18 nov
Updated all makefiles. You may need to update the port settings to get your project to program the robots again.
Fixed Makefile for circle_spacing behavior. Now links to the repository library.
Submitting circle spacing code. Will evenly place the robot on the circle.
Adding folder for circle spacing code. Behavior should attempt to space robots equally on a given radius of a circle around a central robot.
Circle Formation: added wireless and updated
Removed old rangefinder folder in trunk/projects. This folder has been moved to its own branch.
Converted Circle formation to a state machine
Updated IR rangefinder lookup table. Now reports in millimeters with an accuracy of +-10mm.
Updated rangefinder.h with new MIN_ADC and MAX_ADC values
Broke build.
Fixes..
Defaults to main, Creates launch stacks (just realized this is sort of backwards), Returns to tasks that are already running.
I gave the scheduler a crack based on avrOS and the code from 18348 that I think caused John to add these skeleton files.
Very very basic preemptive task scheduling that runs through the list of tasks, checks if they are ready to run based on a timer period...
Changed Push-Pull to display BOM histogram as well as net IR BOM vector. Changed BOM Tracker to print an x,y pair separated by a comma so the data can be saved and read in by MATLAB for analysis.
Edited BOM Tracker project Makefile to make correctly. Removed old test file for net IR BOM vector from behaviors folder. Cleaning up Push-Pull behavior to remove code which was moved into BOM library.
Renamed old file used to test net BOM IR vector calculations to new BOM tracker file.
Copying over files originally used to test net BOM IR vector calculations. They will now be used to try tracking the location of one robot in 2D space.
Created project directory to investigate using the BOMs to track robots in 2D space.
Merged new BOM vector functions into the trunk and did a "make dist" to recompile the library. Also brought over C file used to test new BOM function behavior.
Recompiled library to incorporate new BOM histogram print function. Push-Pull behavior currently prints the BOM intensity histogram and the resultant vector over USB.
Merged new function to print BOM intensity histogram into the trunk.
Cleaning up folders added for demonstration purposes.
Added comments to circle formation code
Made changes to newfile.c
Added newfile changed main.c in james dummy folder
Added danshope
Changed main.c in james dummy folder