This repository contains the Robot and Simulation software project. For a getting started guide, see the documentation folder.
The common folder contains the common library with dynamics and utilities
The resources folder will contain data files, like CAD of the robot used for the visualization
The robot folder will contain the robot program
The sim folder will contain the simulation program. It is the only program which depends on QT.
The third-party will contain small third party libraries that we have modified. This should just be libsoem for Cheetah 3, which Pat modified at one point.
Doxygen document: https://mit-biomimetics.github.io
To build all code:
mkdir build
cd build
cmake ..
./../scripts/make_types.sh
make -j4
If you are building code on your computer that you would like to copy over to the mini cheetah, you must replace the cmake command with
cmake -DMINI_CHEETAH_BUILD=TRUE
otherwise it will not work. If you are building mini cheetah code one the mini cheetah computer, you do not need to do this.
This build process builds the common library, robot code, and simulator. If you just change robot code, you can simply run make -j4 again. If you change LCM types, you'll need to run cmake ..; make -j4. This automatically runs make_types.sh.
To test the common library, run common/test-common. To run the robot code, run robot/robot. To run the simulator, run sim/sim.
Part of this build process will automatically download the gtest software testing framework and sets it up. After it is done building, it will produce a libbiomimetics.a static library and an executable test-common. Run the tests with common/test-common. This output should hopefully end with
[----------] Global test environment tear-down
[==========] 18 tests from 3 test cases ran. (0 ms total)
[ PASSED ] 18 tests.
To run the simulator:
./sim/sim
./user/${controller_folder}/${controller_name} ${robot_name} ${target_system}
Example)
./user/JPos_Controller/jpos_ctrl 3 s
3: Cheetah 3, m: Mini Cheetah
s: simulation, r: robot
mkdir mc-buildcd mc-build; cmake -DMINI_CHEETAH_BUILD=TRUE ..; make -j../scripts/send_to_mini_cheetah.shssh user@10.0.0.34cd robot-software-....Run robot code ./run_mc.sh
mesa-common-devfreeglut3-devcoinor-libipopt-devlibblas-dev liblapack-devTo use casadi,
sudo apt-get install gfortran liblapack-devsudo apt-get install coinor-libipopt-dev