# hellobot **Repository Path**: HeGang80/hellobot ## Basic Information - **Project Name**: hellobot - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-04-13 - **Last Updated**: 2022-07-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # hellobot ## 介绍 a pet robot ## 软件架构 共7个节点 1. 麦克风阵列 microphone_array_node 接收声音信号,并处理得到声源位置,发布到Calling上 2. 电池 battery_node 检测电池状态,发布充放电状态、电量信息到Battery上 3. IMU imu_node 检测位姿信息,发布位姿 4. 主函数 main_node 订阅Battery,决定是否发布运动信息到move 订阅Calling,计算并发布运动指令 5. 运动节点 move_node 订阅Move,执行运动指令 6. 跳跃节点 jump_node 订阅Move,执行跳跃指令 7. 通讯节点 hellobot_server_node socket通讯,接受client端的信息,发布到TCPtalker上。主要用于robot的调试,如直接从上位机发布运动指令等。 ## 安装教程 1. ROS melodic 2. python2.7 ## 使用说明 ### Hellbot 1. 修改.bashrc文件,添加 ` source ~/hellobot/devel/setup.bash ` 2. `open a terminal` 3. `rosrun cpp_documents hellobot.launch` ### Simulation 1. 需要建立一个Python3环境,并在环境中对ros melodic进行配置。具体在环境中下载如下包即可。 ` pip install numpy pyyaml rospkg ` 如果出现类似于“version...__version__”之类的报错,应该是对应包版本问题,尝试更换一个老一点的。 2. 对于Pybullet仿真,首先需要在`src/hellbot_sim/src/PybulletSimulation/demo.py`中,修改模型路径为绝对路径 ` robot = p.loadURDF("/home/he/hellobot/src/hellobot_sim/src/PybulletSimulation/Simulation/urdf/Simulation.urdf",startPos, startOrientation) ` 否则,可能会出现找不到模型文件的bug,bug来源可能是rosun hellobot_sim demo.py时,父文件夹并非PybulletSimulation。 3. `rosrun hellobot_sim demo.py` 4. 现在已经可以提供三种仿真方案: i)提供client服务端,通过键盘wasd键控制运动,输入p以退出,在退出后1s,地图会出现一个鸭子,并会引导机器人运动到目标鸭子; ``` roscore roslaunch cpp_documents sim_control ``` 另外启动client节点以提供控制: ``` cd .../py_documents/src conda activate hellobot python hellobot_client.py ``` ii)在地图上显示一个鸭子,引导机器人前往,但是在途中会新增一只鸭子,这时机器人将转而前往新鸭子地点。(对应与实际中,当运动中有另外声源输入的情况) ``` roscore roslaunch scripts sim ``` iii)在i)的基础上新增跳跃仿真方案。 ``` roscore roslaunch cpp_documents sim_jump ``` 另外如client等节点可以从功能包启动,而不用像i)中通过python运行。 ``` rosrun py_document hellobot_client.py ``` ### Testing 1. 在`hellobot/src/py_documents/src/test`文件夹下,有一系列测试电气系统的脚本,用以实际调试作用。由于实物并没有做,所以只是把功能写在里面,并没有具体实现,所以说与其说是调试脚本,不如说是调试方案。