## 代码组织
高斯机械臂的代码在树莓派的`~/Project/`目录:
```
gauss@gauss-ros:~/Project/gauss_ws/src$ pwd
/home/gauss/Project/gauss_ws/src
gauss@gauss-ros:~/Project/gauss_ws/src$ ls
CMakeLists.txt gauss_vision rosbridge_suite rosgraph
gauss pilz_industrial_motion rosconsole
```
## 软件架构
![](https://box.kancloud.cn/194bba98751b71f13c28869e1e9e1bc8_711x725.png)
上图为高斯机械臂的软件架构图。
1、圆角矩形为 ROS Package (ROS软件包),gauss_commander、gauss_moveit、gauss_driver、gauss_rpi、gauss_tools为核心包。
gauss_python_api 提供Python api,gauss_user_interface提供blockly功能和手柄功能,gauss_userinterface的功能实现基本是调用了gauss_python_api实现的。
2、白色矩形为各个ROS包实现的功能,如gauss_driver 通过mcp_can_api和dynamixelsdk实现了SPI通信和串口通信。gaussrpi和gauss_tools通过GPIO实现了按钮、LED、工具控制等功能。
3、蓝色矩形为其他功能包,gauss_ikfast_gauss_arm_plugin为运动学逆解插件,gauss_msgs为自定义的ROS消息,gauss_description为机械臂的URDF描述文件等。
4、紫色矩形为整个机械臂的入库文件以及全局的配置文件,可以通过这个功能包一键启动所有功能包、启动gauss_driver等。
- 引言
- 第一章 开关机和网络配置
- 开关机和网络连接
- 开机启动脚本
- 多机通信
- 安装必要的ROS包
- 第二章 软件架构
- 第三章 机械臂模型
- 第四章 Python API
- calibrate_auto
- learning_mode
- move_joints
- move_pose
- gripper
- air_vacuum_pump
- electromagnet
- 第五章 ROS接口
- 示教模式
- 关节空间
- 笛卡尔空间
- 运动规划
- 工具控制
- 自定义消息
- 重新校准
- 自动校准
- 硬件状态
- 第六章 参数说明
- rpi_ros_processes
- gauss_motors
- robot_command_validation
- stepper_params
- gauss_driver
- end_effectors
- 第七章 launch文件
- rpi_setup
- controllers
- robot_commander
- user_interface
- 第八章 视觉抓取
- 第九章 常见问题