当前位置: 首页 > news >正文

社区建设网站/广州seo网站公司

社区建设网站,广州seo网站公司,wordpress免费商城模板,pc网站和手机网站Linux内核 - 非仿生机器人之感知主控系统(协议栈) 注:该项目为18年实习期间,参与非仿生六足机器人(Linux方案)的个人理解和积累。时至今日,再看其实仅为一套系统编程相关框架,一直为…

Linux内核 - 非仿生机器人之感知主控系统(协议栈)

  1. 注:该项目为18年实习期间,参与非仿生六足机器人(Linux方案)的个人理解和积累。
  2. 时至今日,再看其实仅为一套系统编程相关框架,一直为私密,分析后不涉及泄密等问题,于是开放供基础学习和参考**
  3. 此处内容仅为案例,已屏蔽和删除涉密内容,仅供交流学习,勿做其他不合适使用。

1 robot 感知控制系统数据通信结构体

  • 通信结构体包含:数据头,航向角、俯仰角、横滚角、加速度、角速度、磁强度、温湿度及烟雾模拟AD值数据尾(64个字节)
struct storage_info
{unsigned char index[2];      
//数据头index[0]=0x55 index[1] =0xaasigned short yaw;      //航向角 signed short pitch;     //俯仰角 signed short roll;      //横滚角 signed short ax;       //X轴加速度signed short ay;       //Y轴加速度signed short az;       //Z轴加速度signed short gx;       //X轴角速度signed short gy;       //Y轴角速度signed short gz;       //Z轴角速度signed short hx;       //X轴磁强度signed short hy;       //X轴磁强度signed short hz;       //X轴磁强度float temperature;     //温度float temperatureMIN; //温度下限float temperatureMAX;//温度上限float humidity;      //湿度float humidityMIN;   //湿度下限float humidityMAX;  //湿度上限float ad;           //当前烟雾传感器电压值float adMIN;       //烟雾报警上限      float adMAX;       //烟雾报警下限unsigned char endex[2];        //0xaa 0x55 //数据尾  
} __attribute__((packed)) REPO_ENV;
//取消结构体内存对齐char1个字节
signed short    2个字节
float:          4个字节
2+24+36+2 = 64(内存对齐68
  • 结构体赋值(64个字节)
REPO_ENV.index[0]=0x55;
REPO_ENV.index[1] =0xaa;REPO_ENV .yaw =  ;     //航向角 REPO_ENV .pitch;    //俯仰角 REPO_ENV .roll;     //横滚角 REPO_ENV .ax;      //X轴加速度REPO_ENV .ay;      //Y轴加速度REPO_ENV .az;      //Z轴加速度REPO_ENV .gx;      //X轴角速度REPO_ENV .gy;      //Y轴角速度REPO_ENV .gz;      //Z轴角速度REPO_ENV .hx;      //X轴磁强度REPO_ENV .hy;      //X轴磁强度REPO_ENV .hz;      //X轴磁强度REPO_ENV .temperature;   //温度REPO_ENV .temperatureMIN;//温度下限REPO_ENV .temperatureMAX;//温度上限REPO_ENV .humidity;      //湿度REPO_ENV .humidityMIN;   //湿度下限REPO_ENV .humidityMAX;   //湿度上限REPO_ENV .ad; //当前烟雾传感器电压值REPO_ENV .adMIN;烟雾报警上限及下限      REPO_ENV .adMAX;REPO_ENV .endex[0]=0xaa;
REPO_ENV .endex[1]=0x55      memcpy (data, &REPO_ENV, 64);void *memcpy(void*dest, const void *src, size_t n);
功能
由src指向地址为起始地址的连续n个字节的数据复制到以destin指向地址为起始地址的空间内

2、robot 感知控制系统命令通讯结构体

//从控制站下发命令给控制系统
struct msg   消息队列
{	 long type; //1L      	//命令类型long msgtype;      		//下发给那个线程unsigned char text[N];  //对设备进行具体操作;
};

3、robot 感知控制系统main及各线程

  • 功能:在主进程基础上,创建多个线程同时进行传感器及其他任务共同进行,为同步数据做基础。

3.1、感知模块 main逻辑

  • 在主程序基础上,创建各模块线程,同时进行工作,并且利用线程间同步机制简单实现同步数据并实时传输。
    (只是搭建了整体框架、还未移植已实现的传感器以及数据同步)
1.初始化并创建: 
温湿度线程、烟雾线程、IMU线程、摄像头线程、
接收/处理控制站命令线程、同步上传数据线程。2.简单初始化线程间通信相关同步变量。
(已实现: 各模块单独ARM上读取数据程序。)
(由于烟雾及温湿度部分模块问题,目前烟雾还差一点工作未实现)

3.2、感知系统 - 各线逻辑

1、温湿度线程:
1.1、已实现单独在PC及开发板数据读取。
1.2、已合并到主进程的温湿度线程中,并实现开发板移植。
1.3、实现串口相关设置,根据AT指令集编程实现读取相关温湿度数值。2、IMU线程:(已实现,未合移植)
2.1、已实现单独在PC及开发板数据读取数据。
2.2、未合并到主框架中,由于接口问题未移植到开发板。
2.3、实现读取IMU各个坐标并根据厂家协议解读坐标值,实时更新数值。3、摄像头线程:( 移植相关驱动和程序)
3.1、已实现方法1.
读取摄像头ARM接口Video,其解码并输出为avi。
实现读取mjpg格式数据,此处需注解码问题,数据外传及实时显示的实现;
3.2、已实现方法2.(网络常用方式)
移植Mjpg-stream到ARM开发板,实现局域网内客户端或网页端实时显示。 4、命令控制线程:( 情况待续。。。)
4.4、实现接收控制站遥控信号.实现动作控制。
4.2、实现接收遥控信号,实现视频(客户端及网页局域网内)实时传输。
4.3、实现接收遥控信号,同步所有数据信息,并进行实时信息上传。5、数据刷新线程( 情况待续。。。)
实时刷新数据,并实现数据的同步。

4、相关问题记录

4.1、移植相关驱动

4.2、移植内核

4.3、数据采集

4.4、协议联调

4.5、机器人六足数据采集

4.6、机器人平衡&IMU坐标采集

4.7、USB线程和视觉采集

4.8、感知主控稳定性问题

 A. 未知原因,两个USB接口只有一个接口可用。
(原因1. 接口硬件问题,有待返回商家检测。
原因2. 驱动问题,编译并移植了多次内核,仍无法解决
原因3. Linux最小根文件系统问题,
以上问题与技术支持探讨过,由于其中一个可暂时支持传感器数据提取工作,暂时稍后解决)B. 其中一个可以的USB接口,插入USB-hub只能实现IMU、温湿度、烟雾接口同时共用,插上摄像头以后会出现接口错误。但是插上USB-HUB可以正确连接摄像头并正常使用。(即摄像头video与其他传感器不能在USB-HUB上同时使用,摄像头必须单独插一个USB接口)
(原因:1.驱动问题
(但是单独使用任何一个都没问题,不解。)
2.接口可能出现插入接触不良) C. 由于所购买模块与开发板接口电压问题,导致部分小模块无法连接。
(原因:开发板GPIO输出电压太低,模块使用电压不常见,无法正常使用模块店家给的电压及接口转换模块)
(已解决:商家只换不退,更换了部分模块,返回的已经实现,目前还有一个小模块在路上(基本功能与接口应该是可以使用了,有待解决。))D.传输问题1 数据同步(目前考虑在实现主进程基础上,利用各线程间同步机制进行数据同步,有待指导建议)2 未知传输端以及传输方法。(只是简单构建了一个通信协议结构体以及控制站命令接收的消息队列,有待建议指导。)E.下面的工作:1、待返回的烟雾模块,实现开发板数据提取2、问题B,问题C。3、将各部分传感器已单独实现的功能程序合并到主进程的各部分线程中,移植到开发板并基本实现在主进程下各模块线程的基本工作,为后续同步保存数据及发送数据做基础。4.简单实现同步各部分数据。(有待建议指导)5.接受控制站命令线程及数据上传同步刷新线程。6.问题A。(重要问题)
7.6的基础上,实现摄像头与其他传感器一同工作,并进行实时的数据传输和命令接收控制等。8.数据传输方法及传输目标等等待续。。。。(简单定义了通讯结构体,有待指导建议) 
http://www.whsansanxincailiao.cn/news/31945008.html

相关文章:

  • 网站架设/宁波seo快速排名
  • 长沙便宜做网站/站长网站大全
  • 网页版传奇源码/北京网站优化
  • 昆明网络推广昆明网站建设昆明昆明/太原网站排名推广
  • 网站做自动群发百度搜录/国外网站推广平台有哪些
  • 肃州区城乡和住房建设局网站/公司网站建设需要注意什么
  • 牛商网做网站/竞价代运营外包公司
  • 网站建好了seo怎么做/seo推广优化
  • 产品网站推广方案/百度收录提交申请
  • 做淘宝首页初学ps视频网站/app推广拉新接单平台
  • 深圳手机网站建设服务/上海网络公司seo
  • 学校官网网页设计模板/seo和sem是什么
  • 武汉网站建设怎么样/太原网站建设谁家好
  • 商城网站建设需要多少钱/seo新站如何快速排名
  • 修改wordpress发表评论/企业网站优化价格
  • 泉州网站建设+推广/美国站外推广网站
  • 赚钱游戏 真实/北京网站seo哪家公司好
  • 大陆做爰视频网站/河南网站公司
  • 个人网站的色彩设计怎么做/公司网络营销实施计划
  • 商务部网站建设情况汇报/百度推广点击收费标准
  • 4d网站广告图用什么做的/肇庆百度快速排名
  • 做网站需要注意的问题/百度搜索引擎的网址是
  • wordpress文本组件使用方法/北京网站优化公司哪家好
  • 遂宁商城网站建设报价/百度极速版推广
  • 网站用花生壳nas做存储/整站优化网站
  • 本科自考是什么意思/seo网站关键词优化价格
  • 做网站如何语音/网站转让出售
  • 企业如何做网站建站/网址最全的浏览器
  • 手机上自己如何做网站/云南网站seo服务
  • 诏安县城乡规划建设局网站/免费的模板网站