shell交互
cabinx
这个作者很懒,什么都没留下…
展开
-
利用json文件实现不同设备间的交互(一)
在做工程时,遇到如下需求:当移动端按下按键,机器人底盘实现相应功能,即树莓派上启动相应服务。鉴于涉及不同设备以及各项服务涉及不同语言,需要设计一种交互方式相互协调。 实际实现借鉴了Client/Server结构。首先在Server端(即树莓派,各项功能对应的程序实现均于此)新建一个json文件,文件中的key值对应各项功能,value值为1或0,分别对应是否启动功能。接下来在...原创 2018-04-27 12:22:54 · 659 阅读 · 0 评论 -
利用json文件实现不同设备间的交互(二)
cartographer建图过程中,当json文件中map_builder_save属性的value置1,即接收到地图保存信号时,应实现结束建图且保存地图,同时将map_builder_save置0。保存地图完成后,将map_builder_exit置1,即发出结束建图进程的信号。对cartographer_ros源码做修改,新建监听json文件的线程,当json文件内容发生改变时,做...原创 2018-04-27 15:13:45 · 364 阅读 · 0 评论 -
利用json文件实现不同设备间的交互(三)
利用python脚本监听json文件,当map_builder_exit的值为1时,结束与cartographer建图有关的node,释放节点。python脚本较为简单,仅涉及python对json的处理,和利用python执行shell命令。 脚本map_save.py如下:# coding=utf-8 //设置文本格式import os,time,sysfrom...原创 2018-04-27 15:28:28 · 254 阅读 · 0 评论 -
利用json文件实现不同设备间的交互(四)
在有(一)、(二)、(三)的基础后,只需要一个全局的shell脚本按需求执行各项命令即可。shell脚本循环监听json文件,根据内容的改变依次执行指令。 选取jq作为shell对json文件的处理工具。ubuntu下使用sudo apt-get install jq安装即可。 脚本remote_communication.sh如下:#! /bin/bashcou...原创 2018-04-27 16:53:44 · 314 阅读 · 2 评论