Added latching to publishers so the first message gets noticed.
Added conversions abs_to_rel and rel_to_abs.
Also, added warnings after these conversions in the case that a requested speed has to be cropped.
Tested against a temporary behavior which set the speeds (now removed since it's very easy to write such a test behavior).
Added code for unit conversion, pending tests.
Merge branch 'master' of ssh://roboclub.org/home/svn/scoutos
Old little changes to sonar.
Adding a Priya custom scout.
Removed unnecessary extra code in motors node (oops!)
Fixed whitespace in motors node
Fixed motors node to work around pwm driver bug
The node can now only do writes to /dev/pwm*, because doing both readsand writes causes the fstream to try seeking, which fails because it'snot supported by the driver. Then the fstream refuses to do any more io.
Changed some more stuff, broke running things.
Probably fixed the crashing bugs. Implemented floating point pickers.
Changed linefollowing so that turns start working once again. Also fixed some bugs with maze solving.
Fixed sonar out of range bug. Max range now at 9.144 m.
Called spinOnce to update sonar readings.
Nicer look for maze map.
Added new services.
Registered a default callback for wireless receiver. Also added default virtual constructor.
Added a maze map.
Added the behavior to behavior list and cmakelists and made things compile.
Finished writing up the maze solving behavior.
Updated sonar so it broadcasts readings in mm as specified.
Removed old teleop.
Changed documentation: sonar pos 0 is on the right
"Fixed" the sonar bug.
Turns out the sonar just wasn't set to on by default, so nothing was being visualized.Changed it so the sonar is on by default.We should probably make it more clear when the sonar is off.
Added services to set individual control for visualization tools.
However, there is a bug in the sonar viz for multiple scouts, looking into it now.
Working on turning sonar on and off for robots individually.
a poor barebone of maze_solve that I wasn't able to finish
Sepearated refresh rate for scouts and for the simulator.
Fixed the line following code.
Now works with new unitsFixed a bug with reading the line location, correctly centering the line between -3.5 and 3.5 rather than -4 and 3.Also fixed a bug caused by overflow in absolute speeds sent to motor control, which fixed bouncing in line following.
Removed a ROS_INFO from ghost scout file.
Changed sonar to use 16 bit values, not 8
Fixed teleop with new units, and changes the refresh rate to be closer to true m/s.
Changes so that scout1 automatically spawns upon creation of thesimulator environment, and that line follow just continuously followslines instead of prior line-following-capability testing code.
Fixing bugs with ghost scout (these were problems in odometry relatedto constants in the simulator and coordinate frame and theta representationin the simulator). Also made ghost scout translucent in order to differentiateit.
Continuing work on standardization of units.
Files that add ghost scout.
Changes to add ghost scout to sim frame and make it show up on the simulator.Currently the functionality for killing scouts does not kill the ghost scout. That needs to be fixed eventually.
Conflicts: scout/scoutsim/src/scout.cpp scout/scoutsim/src/scout.h
Fixed sonar bug (corrected y direction)Added sonar_toggle and set_scan command and callbacksCleaned up sonar_visual toggle code
Added header guards to scout constants.
Last commit did not contain changes to Odometry behavior. Gits dumb.
Changed Odometry to publish a ScoutPosition message with the scoutname, x, y, and theta.
Added new launch file template for scoutsim.
Style changes to BehaviorGUI (line length, spacing)
Removed Header from BOM message.
If we need a timestamp, we can add it back later. We don't need aframe_id...
Scoutsim now has consistent units of m and m/s.
This will cause some problems.
Fixed pause and resume. Kind of. There are lots of bugs with the GUI.
Fluidified fluid teleop.
Removed the initial default scout spawn.
This should be taken care of by the GUI or launch file somehow.
Loads specific images for each scout if they exist
Otherwise, looks in the images folder for scout.png.Added a few default scouts with numbers, and the xcf files they were created from.
Fixed pause so that it compiles. Also changed behavior gui so that it starts with Scout1 automatically.
Added toggle for Sonar. Added backsonar indicate-Sonar can be toggled under Sim -> Sonar-Front and Back onars now display most recent scan point as a green dot
Conflicts: scout/libscout/CMakeLists.txt scout/libscout/src/BehaviorList.cpp scout/libscout/src/BehaviorList.h
Added pause behavior to list
Added new behavior to makefile
Removed bom.cpp, bom.h, get_bom_reading.srv, and query_sonar.srv
Removed them for real this time; not pretend :D
Changed get_bom_reading.srv to bom.msg
Also, removed bom.cpp and bom.h since there won't be a bom node runningon the Gumstix.
Scoutsim: Added Sonar Toggle
Sonar display can now be toggled via Menu->Sim->Sonar
Added built-in scoutsim teleop!
Generate a blank image for lines/walls if one doesn't exist.
Edited Sonar to display points on simulator.
Changed rate of sonar scan to 0.5sMade a new wxDC graphics object for sonar
Fixed Odometry behavior so that it now works and then added a get readings functionality to sonarcontrol.
Added Sensors class that abstracts away sensors from behaviors. Stops creatingduplicated sensors for each scout.
Added race_walls again, whoops.
Added a new grid map for testing.
Updated scout size. Now 1px = 0.5cm.
Added initial GUI for testing, renamed cw and ccw behaviors
Also added new testing files for sonar - maps/racetest*.bmp
Added sonar, though it looks buggy.
Use sonar_viz to continue debugging and make sonar work!
Added flush to motors node so hardware values actually change
Finished adding gpio control to motors node
I changed the Motor constructor to take pin numbers instead of filenames, and construct the file names itself. All that remains in testing.
Added forward/backward support to motors node
Changed motors node to write to pwm device files
Added walls to the scoutsim visualizer.
Fixes to WirelessReceiver and wl_test
Changed receive callback to use std::function so we can use std::bind topass non-static member functions. There is still a weird problem whereWirelessReceiver::dummy gets called many times for each incoming packetin wl_test.
Broke the build and then fixed it. Now onto testing!
Added wireless handling to scoutsim. Untested.
Just commented out a line of unused code.