Added scoutsim support for encoders.
To see the query_encoders.srv (used for accessing this data) in action, use: rosrun libscout test_encoders. You will see a stream of encoder data.
Merge branch 'master' of ssh://roboclub.org/home/svn/scoutos
Changed deconstructor for behavior list because I discovered vector::empty which should be used instead.
Fixed CliffsensorControl, now actually part of Behaviors
Committing changes that were not previously committed. Also got rid of some confusing/unnecessary code.
New behavior implementation that uses a list of behaviors to command multiple scouts with multiple behaviors.
Added CliffSensorControl to libscout with very basic functionalitythat hopefully doesn't break anything.(Please let me know if I did something wrong!)
Updated ButtonControl and SonarControl.
Finally, the behavior compiles. Had to fix a lot of problems involving misunderstandings with Publisher/Client/ServiceServer/ServiceClient confusion.
We can now run priya_behavior as an executable, though the process for generating behavior executables still needs some work.
Updated the licensing information in many files.
This is a broken commit because I decided to do this at a bad time. Sorry! The build will be working after next commit, I promise (and I won't push till then). This commit reflects the licensing in the files after I used my auto-add/remove script.
Modified the Behaviors to take a scoutname.
Scoutname now specifies which scout the behavior will affect. Scoutname must be passed to the constructors of each control module (some of which are now in need of modification), so that they can publish to the correct topic....
Didn't update the CMakeLists in my previous commit.
Removed references to now nonexistant files.
Updated the Behavior definition and extensions.
The Behavior.cpp/h class now works and can be extended by simply implementing its run() method. However, the subclass must also be extantiated and used in an external executable. An example of this can be seen in PriyaBehavior.cpp/h, and the executable, priya_behavior_process.cpp. In the future, we should move all behaviors into a behaviors/ folder, and autogenerate the executable to be compiled....
Created Behavior class and a sample behavior using the class. Not tested.
Chaned libscout sonar code so that it turned sonar on and off when necessary.
Integrated SonarControl into the libscout package.
Created SonarControl files. Not tested and therefore not included in libscout interface yet.
Got motor control working with scoutsim
Behaviors can now use the MotorControl class to change the speed of the motors in the simulator. The simulator correctly handles the command.At the moment, the set_motors command is limited to 'scout1'. We should look into prefixes to specify which scout (scout1, scout2, etc) each behavior should command....
actually removing what I removed
Rewrote libbuttons to use objects (ButtonControl).
Also removed query_motors (motors node now responsible for publishing changes)
bugfix: removed -lmotors from manifest files (causing rosmake errors)
Made a lot of changes to the general structure.
Applied object-orienting techniques to the code, cleaning it up considerably. Major design changes are as follows:
Updated motors code.
Changed the definitions for the set_motors message, which forced a fewimplementation changes as well.
Changed "libscout_node" to "node" and "n" to "node" in other packages.
Only added libbuttons files. Adding changes to libscout that make libbuttons work.
Added buttons to libscout. Compiles!
Made libscout compile. Changed behavior.cpp to set motors to the same speed in order to test simulator code.
Fixed bugs I saw in headlights code. Fixed object parameter missing error. Added no-set capability to headlights. Changed attribution in motors. Fixed CMakeLists.txt due to error I put in there on my last commit (extra comma). Should compile now. I'm sorry if it doesn't.
Added libheadlights.cpp(cpp/h). Also updated constants.h and libscout.(cpp/h) for libheadlights. Have not compiled yet, but it should work.
Added behavior.cpp to CMakeLists.txt because I forgot to add it before.
Restructured libscout.(cpp/h) so the behavior main runs in a separate file, and just calls upon libscout.cpp for initialization. This behavior function can then be swapped out or changed, and the rest of the libscout node can be precompiled so it doesn't have to be recompiled every time.
Deleted compiler output files that were accidentally included in analog.
Added code inside motors.cpp to set and read individual speeds in different units. Also added appropriate headers to motors.h, and units field to query_motors.srv and set_motors.msg
Added the ROS stack with the libscout, motors, and sonar packages to the reposititory, and associated files. There are probably still things missing. Libscout won't run properly, but it and motors will compile. Sonar is probably broken, but nothing depends on it yet, so this shouldn't be an issue.
Created first version of git repository; added libscout and motors packages.
The repository root is the ros directory, which contains the ROS stack for the scout project.The included files are those that ROS creates with a new stack or package, and those created manually. Files created during compilation are not included....