十六届全国大学生智能汽车竞赛-百度智慧交通-上下位机开发
文章目录
- 前言
- 一、上位机
- 1.计算卡的主要架构
- 2.计算卡接口
- 3.环境部署
- 二、下位机
- 1.下位机性能参数
- 2、下位机接口
- 三、通信协议
- 总结
前言
今年是全国大学生智能汽车竞赛-百度智慧交通组的第二年,未来随着计算设备的更新迭代,越来越多的人将会接触到高性能的边缘计算设备,实现更加复杂的任务。本文介绍了本次比赛硬件设备以及其开发实践过程。
一、上位机
本次比赛百度提供了边缘计算设备EdgeBoard,该设备作为控制中枢接收来自摄像头和其他传感器的信息,在处理后将结果发送给下位机,实现对整车的控制。
EdgeBoard计算卡Lite版(FZ3),是百度基于FPGA方案实现的轻量级嵌入式AI计算卡,适用于AI开发验证及智能硬件打造。内置Linux 4.14.0系统和深度学习预装环境,与百度大脑模型定制平台。
1.计算卡的主要架构
EdgeBoard FZ3计算卡内部搭载Linux系统,开发者可以基于Linux系统进行应用程序进行开发。
主要调用流程:1.应用程序获取视频输入->2.调用预测库加载模型->3.调度模型和底层驱动加速模块进行计算->4.获得运行结果)
本次比赛推理模型基于PaddleLite,Paddle Lite是飞桨基于Paddle Mobile全新升级推出的端侧推理引擎,在多硬件、多平台以及硬件混合调度的支持上更加完备,为包括手机在内的端侧场景的AI应用提供高效轻量的推理能力。
2.计算卡接口
可以通过MiniDP接口连接显示器,通过USB转串口或以太网口下载程序,通过USB接口进行与摄像头和下位机的通信。
3.环境部署
(1)安装paddlelite
(2)安装驱动:转串口驱动ch341.ko 遥控器驱动joydev.ko USB驱动usbserial.ko
(3)在/etc/init.d 中设置eb.sh开启启动项
(4)部署主要代码文件 autostart,通过python环境开发不同模块
二、下位机
本次比赛使用的下位机为鲸鱼机器人提供的WOBOT主板,该主板基于Arduino和ATmega2560设计,可接入电机驱动板和舵机、传感器等设备。
1.下位机性能参数
硬件参数 |
---|
处理器 |
ATmega2560处理器,时钟频率16MHz,256KB Flashrom,8K RAM |
按键 |
共2个,一个程序复位键和程序运行键 |
端口 |
不少于6路RJ11传感器接口,可接模拟、数字、串口、IIC传感器及数字输出。提供不少于2路485串行接口,可接智能舵机,可扩展8个直流电机驱动口、4个步进电机驱动口、8个编码电机驱动口 |
扩展端口 |
8路PWM输出接口,4路模拟输入接口,1路IIC与UART硬件接口 |
电机驱动板 |
主芯片Cortex-M3处理器,主频72MHz,256k FLASH,64K RAM。4路RJ25电机接口,可接编码电机、直流电机。每路具有过电流保护功能,最大输出电流2.7A,具有软件防堵转功能。 |
其他设备 |
集成蜂鸣器、指示灯等,系统工作电压7-12.6V |
2、下位机接口
下位机端口示意图:
扩展端口可以接入电机驱动板:
主板可以接入两块电机驱动板(通过电机控制ID区分),驱动板可以接入M1-M4 4个电机,P1-P6可以接入传感器和其他组件。
通过USB接口连接,下位机可以通过WOBOT提供的开发软件进行简单的开发和测试,支持C语言和模块化开发。在实际的上下位机中,需要根据通信协议解析数据包,接受上位机的结果进行处理。
三、通信协议
在上位机得到决策结果后,需要将包括电机运动参数在内的决策结果返回下位机,此时上下位机的通信需要按照协议进行,通信协议的格式如下:
帧头 | 长度 | 驱动板号 | 电机号 | 运行模式 | 速度参数 | 校验 | |
---|---|---|---|---|---|---|---|
长度 | 2 字节 | 1 字节 | 1 字节 | 2 字节 | 1 字节 | 2字节 | 2字节 |
数据范围 | 0x77、0x68 | Len | (1-2) | (1-4) | (1-0) | (-100-100) | Sum |
说明 | 固定值 | 帧长度 | 根据拨码开发设定 | M1 对应:0x01 + 实际设备号 | 闭环:0 开环:1 | 电机速度设置 | 加和校验 |
设备参数示例:
ACT_ENCODE_MOTOR =12, //编码电机
ACT_ENCODE_MOTOR_ALL =121, //编码电机
ACT_DC_MOTOR =53, //直流电机
ACT_SMART_MOTOR_SPEED_POS=54,//智能电机位置
ACT_SMART_MOTOR_SPEED =55,//智能电机速度
ACT_PWM_SERVO =11,//舵机
使用示例:
控制智能伺服电机的角度
set_smart_servo_angle(id, speed, angle);//77 68 06 00 02 36 01 50 02 0A
控制编码电机
set_encoder_motor(en_motor_Id, en_motor_port, en_motor_power);//77 68 06 00 02 0C 01 01 32 0A
总结
本文仅仅介绍了硬件设备的开发和使用,具体的控制逻辑需要根据实际进行设计和调整。
十六届全国大学生智能汽车竞赛-百度智慧交通-上下位机开发相关推荐
- 第十六届全国大学生智能汽车竞赛--百度智慧交通(东部赛区)
ENJOY AI Master选拔赛 赛事日程安排 赛事地点:上海市闵行区莘庄工业区社区文化中心(颛盛路745号). 赛事时间:2021年7月19-21日 一.日程安排 二.报到准备 1. ...
- 第十六届全国大学生智能车竞赛百度智慧交通竞赛成绩
简 介: 2021年第十六届全国大学生智能车竞赛百度智慧交通比赛成绩与获奖信息分析. 关键词: 智能车竞赛,百度智慧交通 §01 东部赛区 [表1-1 东部赛区队伍比赛成绩与获奖] 省份 学校 队伍名 ...
- 第十六届全国大学生智能汽车竞赛航天智慧物流总决赛暨第二届“航天杯”移动机器人AI创新技术挑战赛圆满举办
2021年8月20日至21日,第十六届全国大学生智能汽车竞赛航天智慧物流总决赛暨第二届"航天杯"移动机器人AI创新技术挑战赛圆满线上举办.本次比赛由全国大学生智能汽车竞赛组委会.中 ...
- 第十六届全国大学生智能汽车竞赛-航天智慧物流创意组 线下选拔赛赛题发布!
第十六届全国大学生智能汽车竞赛-航天智慧物流创意组 线下选拔赛赛题 01 赛题背景 随着我国先进自动控制设备的广泛采用,以及人力成本的日益增加,对自动化搬运环节的需求也越来越大,但是目前国内智慧物流方 ...
- 第16届全国大学生智能汽车竞赛——百度智慧交通赛项技术方案公开
目录 一. 前言 二. 方案介绍 1. 巡线 1.1 遥控 1.2 光线 1.3 分段 2. 举旗 3. 打靶 3.1 调整车头方向 3.2 靶心定位 3.3 距离控制 4. 宿营 5. 抓物块 6. ...
- 第十六届全国大学生智能汽车竞赛 讯飞智慧餐厅 全国总决赛竞赛规则
第十六届全国大学生智能汽车竞赛 讯飞智慧餐厅 全国总决赛竞赛规则 §01 参赛要求及须知 一.参赛要求 1.讯飞创意组比赛作为智能车竞赛的创意比赛面向全国全日制在校研究生.本科生和专科生. 2.每个学 ...
- 第十六届全国大学生智能汽车竞赛 讯飞智慧餐厅组别 全国选拔赛成绩公布说明
第十六届全国大学生智能汽车竞赛 讯飞智慧餐厅组别 全国选拔赛成绩公布说明 简 介: 本文给出了2021年第十六届全国大学生智能车迅飞智慧餐厅分赛区比赛获奖成绩与奖项设置.后面给出进入全国总决赛名单分配 ...
- 第十六届全国大学生智能汽车竞赛总决赛 AI视觉组线上赛细则
简 介: 本文对于参加2021年第十六届智能车竞赛全国总决赛线上比赛室内AI视觉组比赛细则. 关键词: 智能车竞赛,线上比赛,室内视觉AI 一.比赛方式 由于AI视觉组的特殊识别任务,比如分赛区的 ...
- 关于第十六届全国大学生智能汽车竞赛总决赛的规则建议
简 介: 本文收录了全国大学生智能车竞赛浙江赛区组委会对2021年第十六届全国大学智能车竞赛全国总决赛线上比赛建议. 关键词: 智能车竞赛,总决赛,线上比赛,建议 全国组委会: 因疫情影响,第十六 ...
最新文章
- 配置TS + node 的开发环境
- (转)编写可重入和线程安全的代码(Writing Reentrant and Thread-Safe Code)
- mug网络用语_下面这些短语你尽管翻译,全对算我输!
- 大新闻!Magic Leap造假,HoloLens即将入华商用
- cordova 支付_Cordova打包教程(H5项目打包成ipa)
- JAVA day27,28 线程池
- 上周的工作总结和下周的学习安排
- 计算机运算方法与机器指令
- 使用nohup让程序在远程主机后台运行
- C专家编程电子书pdf下载
- abaqus帮助文档翻译,中英对照
- SAP在采购和销售中的税务处理-增值税
- 法国主要贸易海港加入区块链货运物流试点
- 树莓派11bullseye换源/Opencv安装
- 微信公众号运营的七大问题,你遇到了吗?
- 芯片验证漫游指南 pdf_更好地认识PDF 文件
- 计算机更换硬盘键盘鼠标不好使,电脑键盘和主板不兼容解决方法
- bat文件调用CMD命令快速显示ip
- 如何添加51la代码及隐藏统计图标
- 60个可爱的云图案设计,激发你的灵感
热门文章
- JSP WAP 开发
- 用大数据提升食品安全
- 三维重建(一)外极几何,基础矩阵及求解
- php empty 和空字符串区别
- 学成在线 nuxt.js出现localhost 发送的响应无效。 ERR_INVALID_HTTP_RESPONSE 寻求大佬解决
- vlookup匹配值不唯一_突破VLOOKUP函数限制,查找多个对应值
- Ubuntu系统软链接的建立与删除
- python后端学习(五)迭代器、生成器、协程
- SSM毕设项目某企业危化品信息管理系统bf339(java+VUE+Mybatis+Maven+Mysql)
- python安装方法32位_python安装教程