Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
RA8-M85-vision-board
RT-Thread
[24嵌入式设计大赛]基于Vision-Board的智能应急环境监测控制小车
发布于 2024-09-10 21:48:36 浏览:719
订阅该版
[tocm] # 感慨: 认认真真的做设计,编写每一行代码,调试每一个功能,设计文档也是严格按照论文的标准编写的,最后竟然没获奖。官方的解释是:没有使用摄像头功能。 如果认真做事还没有得到应用的回报,就是对做事人的最大打击。 # 1 项目概述 ## 1.1 项目背景 当下是一个智能化的时代,万物互联是时代的需要。基于这样的需要应运而生了许多新的技术,以支持这样的需求。在一些比较特殊的领域,单靠人力解决这些问题的成本是很高的,例如:狭窄的甬道、微小的洞穴、火灾现场、甚至是战场。这时如果使用智能机器人进行环境探测或者现场勘探,付出的代价成本会小很多。如今出现了无人机,无人小车,无人舰艇等等。这些设备的诞生都是为了解决特辣领域的需求。 本系统是一款硬件上基于Vision-Board 开发板,应用RT-Thread嵌入式操作系统设计的一款智能控制小车。其可实现采集现场环境的温度、湿度、光照强度,同时使用超声波雷达扫描环境的参数,以了解特殊环境的地形特性,并通过WIFI和蓝牙实时的发送给系统服务器,便于决策者采取措施和行动。 ## 1.2 系统功能介绍 本系统分为3个部分,其分别为: 1)下位机智能小车控制系统,该系统分为两个部分 part-1: 主控模块: version board part-2: 从控模块: 基于STM32的板块(**主要用于控制电机,Version board 扩展的IO无法提供4路 PWM信号**) 2)微信小程序App 3)PC上位机App ### 1.2.1 下位机智能小车控制系统 **本系统基于Vision-Board 开发板, 该板块是 RT-Thread 推出的基于瑞萨 Cortex-M85 架构 RA8D1 芯片的一款开发板。 其主要功能如下:** 1)使用Vision-Board 作为主控板卡,该板块实时读取温湿度传感器,光照传感器的数据。同时通过超声波测距模块扫描环境参数。 2)控制OLED显示器,对读取的温度、湿度、光照、测距数据进行处理,将这些数据实时的显示在OLED屏幕上。 3)控制蓝牙模块,实时接收蓝牙模块接收到的从微信小程序发送的。 4)发送命令给小车运行控制模块,实现小车运行轨迹的控制。 5)实时接收和处理微信小程序App发送的控制命令,同时将这些命令转发给小车运行控制模块,实现小车的控制 6)实时上传温度、湿度、光照、测距数据给微信小程序App 7)实时接收和处理PC上位机App发送的控制命令,同时将这些命令转发给小车运行控制模块,实现小车的控制 8)实时上传温度、湿度、光照、测距数据给PC上位机App ### 1.2.2 微信小程序App 微信小程序App: 其用于实时接收下位机智能小车控制系统发送的环境参数数据,同时发送控制信号给下位机,可通过App实时控制小车的运行轨迹和状态。该App的操作小车的优先级高于Wifi接口(此时PC App控制小车功能失效)。该App可以实现小车运行状态的模式切换功能。 1)自动模式:此时小车通过寻迹模块自行运行 2)手动模式:控制App上的控制按钮,实时控制小车的运行状态,当超过60s没有指令下发给下位机时,小车会自动切换到自动模式。 ### 1.2.3 PC上位机App PC上位机App: 通过WIFI实时接收下位机智能小车控制系统发送的环境参数数据,同时发送控制信号给下位机,可通过App实时控制小车的运行轨迹和状态。 该APP可以配置小车的运行状态: 1)自动模式:此时小车通过寻迹模块自行运行 2)手动模式:控制App上的控制按钮,实时控制小车的运行状态 ## 1.3 框图介绍 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/f90c5ce3dd272e97cd72deea6b0fb64a.png.webp) ### 1.3.1 主控板卡 本系统基于Vision-Board 开发板, 该板块是 RT-Thread 推出的基于瑞萨 Cortex-M85 架构 RA8D1 芯片的一款开发板。 Vision Board搭载全球首颗 480 MHz Arm Cortex-M85芯片 ,其具备优越的性能和丰富的外围资源,完全满足该系统的设计要求。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240911/49ad1857917890bf1f052e9c0efef3f8.png.webp) 同时RT-Thread提供了丰富的应用硬件和软件模块可供选择使用。便于开发者基于RT-Thread软件平台快速搭建开发平台。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/cf7f8277903fca0541fa3d9725841964.png.webp) 1)该板卡作为系统的主控模块,其用于控制温度、湿度、光照、距离传感器,并实时从这些sensor中读取数据,并将这些数据实时发送给上位机App。 2)发送控制指令给小车控制模块,实现小车的智能控制 3)将实时读取到的温度、湿度、光照、距离数据显示在OLED屏幕上,数据更新时间间隔为1秒。 4)使用RT-Thread实时操作系统管理系统的资源,整个系统的软件架构基于该系统进行开发。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240911/befcc666bfccf8fdb698dc27da7db3f7.png.webp) ### 1.3.2 小车控制模块 该模块式基于STM32F103的一块扩展模块,选择该模块的原因如下: 1) 对4路(2组)电机控制,需要4路PWM信号波,而Vision-Board 开发板的扩展IO上,不能提供4路PWM控制信号。 2)由于PWM信号由STM32F103模块负责,为了降低小车运动部分软件的开发难度,将4路寻迹信号。光电编码器测速模块放在STM32F103模块上,便于系统的效应速度的实时性。 3)控制蓝牙模块,Vision-Board 开发板只提供一个外扩UART,该接口用于和STM32F103扩展模块通信。于是将蓝牙模块放在STM32F103扩展板卡上。 4)软件架构,采用RT-Thread Nano版本实现资源管理和线程处理 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/8c052402ba08f6e93aa5e199480cbd82.png.webp) ### 1.3.3 通信模块 **WIFI通信模块:** 系统使用该模与上位机App通信。Vision-Board开发板已经集成 **RW007** 模块,且在RT-Thread中已经实现其驱动程序,在RT-Studio下可以通过配置使用LWIP协议栈,快速搭建系统。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/59ddbfbddbb580b8917521d3a976ad1b.png.webp) **蓝牙模块:** ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/2b6266431f022485c02e94759a0c0e38.png.webp) 本系统使用的蓝牙模块为HC-08蓝牙串口通信模块 ,其最大通信距离可达到80M, 其与MCU之间通过串口连接。上位机部分使用微信小程序实现App功能,其可以实时接收下位机上传的环境参数数据,该App同时可以发送控制命令给下位机,以控制小车的运行状态。 ## 1.4 系统使用的技术要点 1)主控模块基于RT-Thread 软件架构设计 2)使用的MCU: Renesa R7FA8D1BH, STM32F103 3) MCU配置软件: FSP, STM32Cube 4) 开发软件: RT-Studio , Keil, Visual Studio 2022, 微信小程序开发工具 5)开发语言: C语言, C#, JS, WXLL, WCSS 6) 通信模块: WIFI通信,网络通信,蓝牙通信,Socket编程 7) 控制算法: PID控制技术 8)光电编码测试技术 9)寻迹检测 10)双MCU之间的协同通信 11) I2C总线挂载多个设备,实时进行数据传输 12)智能小车智能控制:PWM调速,运动方向控制 13)RT-Thread Nano版本在STM32F103上的移植 14)LWIP技术,在version board中使用该模块实现Client功能 ## 1.5 RT-Thread技术的应用总结 1)在version board 板卡上使用RT-Thread的标准版本,创建系统的软件框架 2)应用RT-Thread的驱动框架,构建系统外围驱动程序,主要包括: UART驱动,I2C驱动,基于I2C驱动构建OLED,SHT20驱动程序 3)RT-Thread框架下的集成驱动程序应用,主要是WIFI模块 4)在STM32F103上移植RT-Thread Nano版本,对于熟悉和了解RT-Thread系统的启动过程和实现原理有深刻的理解,便于在该平台上实现应用程序的开发。 5)理解RT-Thread内存管理功能 6) 理解RT-Thread的线程功能,通过移植RT-Thread系统,了解RT-Thread的启动过程,在该系统启动之后,系统的线程运行情况。 7) RT-Thread系统下Shell操作,该功能非常类型Linux上shell功能,可动态选择运行所需要启动的应用程序。 # 2 系统硬件设计 本系统的硬件分为两个部分: 1)Version board主控板块 2)小车驱动控制部分 ## 2.1 Version board主控板块系统结构 主控模块的数据采集部分实现框图 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240916/ffa0423c17683797632f4b87b71201b1.png) ### 2.1.1 传感器接口 该系统挂载了两个传感器:温度传感器SHT20和光照传感器ISL29035,其与Version board通过I2C接口连接,系统硬件连接图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240916/b1c6c658d2630cc9be2a43ee911db1ac.png) 硬件实物图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/3d601c0892c56d690c50c4dbed18a5bd.png.webp) ### 2.1.2 超声波测距接口 系统使用HC-SR04模块,用于探测环境情况,其硬件连接图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/e8fc71f1c877a5bcef3538e6bbf650b3.png) HC-SR04模块与Version board的接口连接关系: | **模块引脚** | **Version Board IO 引脚** | **注释** | | ------------ | -------------------------- | ------------ | | SR-04 TRIG | PORT_05_PIN_10 | 测距触发信号 | | SR-04 ECHO | PORT_00_PIN_06 | 测距信息 | 硬件实物图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/97c684690bb3634cdc85d8afc7928bc1.png.webp) ### 2.1.3 显示器模块 系统选用OLED显示屏,用于实时显示温度、湿度、光照和HC-SR04测到的距离数据,该模块与Version Board之间通过I2C接口连接。其具体连接图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/092d77d814103b2764b97f454c376927.png) 硬件实物图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/358876aa287fe7c89ecba414add77eb0.png.webp) ### 2.1.4 WIFI通信模块 Renesa Version Board中WIFI功能,该模块基于RW007模块设计,RT-Thread软件架构已经实现该硬件相关的驱动接口。笔者基于该模块的相关接口在LWIP软件框架的基础上实现Client功能。实现数据的发送和接收。其硬件实物图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/dd758e6f4dd523ff4035d03548fcd97f.png.webp) ### 2.1.5 Version Board 与 小车控制器模块通信接口 由于Version board的可使用的扩展接口,不能满足小车驱动控制的要求,因此本系统将小车驱动控制部分单独设计,该模块基于STM32F103,其与主控MCU Version Board通过串口通信,其通信连接图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/e83a728239dc8deabcf0f5fedd0a1c54.png) 硬件实物图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/5d9e1d49f47290cef2122a5d29f7242c.png.webp) ## 2.2 小车控制模块 ### 2.2.1 寻迹模块 本系统选用4个寻迹模块TR5000,其小车控制模块之间通过IO连接起来,连接方式如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/dd53f92d8d0ad30754c48e749438b436.png) 硬件实物图: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/3dc62f965acbeb951030c9bce0279941.png.webp) ### 2.2.2 电机控制模块 系统使用4路PWM信号控制两组电机,同时,使用光电编码器监测电机的转动速度。以实现PID闭环扣控制。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/78cab89e1381da7a3952fdb2917db72f.png) 硬件实物图如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/fce7ff20fd951ea94a63f48fc5bc076e.png.webp) # 3 系统软件设计 ## 3.1 主控模块 ### 3.1.1 软件架构 基于Version board 的软件架构分为三个层级: **1) MCU驱动层接口** 主要实现MCU底层驱动,包括I2C接口驱动,SPI驱动,UART接口驱动,Timer接口驱动,RTC接口驱动,IO接口驱动。 **2)RT-Thread 应用层接口** RT-Thread集成了相关的驱动接口,首先使用Renesa 的配置软件FSP使能各个模块的驱动参数,然后在RT-Studio Setting中使能RT-Thread的驱动框架下的接口,就可以完成这些驱动的应用设计,此时,在App中就可以调用相关驱动,实现相应的功能。 **3)App应用层** 该软件层主要实现系统的相关功能,其具体内容包括如下这些: **外围资源驱动程序:** | 项目 | 名称 | | ---- | -------------------------- | | 1 | sht20 驱动和应用程序接口 | | 2 | ISL29036驱动和应用程序接口 | | 3 | HC-SR04驱动和引用程序接口 | | 4 | OLED驱动程序和应用接口 | | 5 | WIFI驱动模块 | **功能程序接口** | 项目 | 名称 | | ---- | -------------------- | | 1 | LWIP Client功能 | | 2 | 控制小车运行状态模块 | | 3 | 数据上传软件模块 | | 4 | 系统运行状态灯模块 | ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/04a469306170649c376a8ab248b568ee.png.webp) ### 3.1.2 软件实现流程图 软件流程图功能介绍: **1)MCU初始化** 主要包括内容: I2C接口,UART接口,IO口,配置定时器参数,初始化SPI接口,配置和使能RTC。 **2)RT-Thread初始化** 主要初始化RT-Thread栈空间,创建Task,初始化console控制台等。 **3)外围资源初始化** 主要包括初始化SHT20 Sensor, 光照传感器Sensor ISL29030,创建和HC-SR04相关的对象 **4)主函数功能** **Task-1:** 使用RT-Thread 创建一个Task,在该task中实时读取各类Sensor的数据,并将这些数据存储到相应的数据结构中。 **Task-2:**读取上位机数据,并对该数据包进行解析,同时对命令进行打包,然后将该控制命令下发给小车控制模块 **Task-3:** 上传实时数据给上位机App,包括微信小程序App和基于WIFI模块通信的上位机App ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/7a53d0c54c74056e917de9fd79e2d198.png) ### 3.1.3 数据结构定义 该数据结构主要用于将系统的Sensor和控制命令打包在一个整体的数据结构中,便于在其他模块中使用这些数据结构。系统上位机发送回传控制时,可以直接将这个数据结构发送出去,上位机接收数据包时,也直接使用该数据结构解析数据。 ```c typedef struct { uint8_t mode; uint8_t mcmd; union{ float sr_value; uint8_t sr_valueList[4]; }; union{ float humidity; uint8_t humidity_valueList[4]; }; union{ float temperature; uint8_t temperature_valueList[4]; }; unsigned int luxValue; }Struc_SensorPack; ``` ### 3.1.4 主控制模块与小车控制模块通信协议定义 主控模块与小车控制模块之间通过串口进行通信,当主控模块接收上上位机发送的命令后,解析完成命令,然后对这些控制数据进行打包。并同时传送命令给小车控制模块。控制协议数据结构定义如下: ```c #define HEAD '[' #define END ']' #define DATALEN 256 #define RCS_SUCESS 0x8000 #define RCS_READ 0x4000 #define CAL_CMD_CODE 0x3fff #define PROTOCOL_HEADER_OFFSET 0 #define PROTOCOL_SOURADDR_OFFSET 1 #define PROTOCOL_TARADDR_OFFSET 2 #define PROTOCOL_FUMN_OFFSET 3 #define PROTOCOL_CMD_OFFSET 5 #define PROTOCOL_DATA_LENGTH_OFFSET 7 #define PROTOCOL_DATA_OFFSET 8 typedef enum { ERROR_NONE = 0, ERROR_OUT_OF_RANGE = 0x0001, ERROR_UN_RECONGNITION = 0x0002, ERROR_FAIL_SAVE_PARAMATER = 0x0003, ERROR_PARAMATER_NOT_ESIXIT = 0x0004, }RCS_ErrorCode_enum; typedef struct { uint16_t OptCode :14; uint16_t TransfMode :1; uint16_t OptMode :1; } RCS_CommStatus; typedef struct { uint8_t *RcsParserBuff; uint8_t HostSendBuf[DATALEN]; uint8_t sourAddress; uint8_t targetAddress; uint8_t frumIndex; uint8_t dataLength; uint8_t crc; uint16_t cmdCode; uint8_t *dataBuff; void (*pf_SendPut)(uint8_t*, uint16_t); void* CmdTable; uint16_t CmdTotal; }RCS; typedef void (*PFNCT_RCS)(RCS *); typedef struct { uint8_t command; PFNCT_MCS pf_FuncPtr; } RCS_CmdNode; ``` ### 3.1.5 程序架构介绍 本程序使用RT-Studio IDE进行软件开发,系统基于Version board板卡创建项目。主控模块的程序主要在如下两个代码包中开发。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/306aae6342c4931992c487994090c310.png.webp) ## 3.2 小车控制模块 ### 3.2.1 软件架构 **软件流程图功能介绍:** 1) 初始化MCU外围的资源:包括定时器,IO,UART,外部中断 2)初始化外围资源:该模块的外围资源主要的定义IO的状态,以及关电编码器所使用的控制接口 3)主程序功能: **Task-1:** 实时读取TR5000的状态,并将这些数据保存起来。 **Task-2:** 解析上位机发送的命令,执行相关的操作 **Task-3:** 上传从主控模块中接收到的传感器数据给微信小程序App **Task-4:** 小车运行状态控制。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/00dd0df77fb3606e1591ebe3cecdc4de.png) ### 3.2.2 小车速度控制的PID算法 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/15ea9e9f2da3f411ddb16a0fef7e997e.png) ### 3.2.3 程序架构 小车功能控制模块使用Keil IDE开发,软件基于**RT-Thread Nano**架构进行开发,该软件部分主要包括两个模块 1)电机控制部分 2)运行状态功能控制部分 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/f06326ca53b3fe1165fe3d16783eafd2.png.webp) ## 3.3 上位机部分1:微信小程序模块 微信小程序App通过蓝牙模块与下位机通信,其实时读取下位机上传的温度、湿度、光照强度数据,以及超声波测距参数。该App上还设计了5个按键,用于控制小车的运行状态。 ### 3.3.1 软件架构设计 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/e1880e7915033f1336e23c3918f8c4b8.png) ### 3.3.2 微信小程序AppUI 微信小程序的UI分为两个部分 1)界面-1: 主要用于扫描蓝牙Client 2) 界面-2:微信小程序主界面,该UI分为两个部分: part-1: 显示Sensor的实时数据,包括:温度、湿度、光照、SR测距数据 part-2: 小车运行轨迹控制 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/4ee953ab689b5477046315b09b8fe4a8.png.webp) ### 3.3.3 程序架构 本程序使用微信小程序开发工具编写,其程序架构如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/b0583f428b0bb8e8901f0cb69597480a.png.webp) ## 3.4 上位机部分2: PC上位机Server PC上位机主要与Version board 的WIFI模块实现Client通信,该上位机实现了一个Server功能,可支持多个Client同时连接该设备。其主要实现实时显示下位机上传的温度、湿度、光照、SR测距数据。用户同时可以在该软件上配置小车的工作模式。操作小车的运行轨迹。 ### 3.4.1 软件架构设计 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/3e7cf7a0377446c56251f7463bf36aec.png) ### 3.4.2 软件UI介绍 **软件UI分为5个区域**: Part-1: 网络相关参数配置,启动或者停止监听网络Client Part-2: 模式配置,配置为手动模式时,此时可以通过蓝牙或者PC-Client控制小车的运行状态,配置为自动模式时,此时小车启动自动寻迹功能。 Part-3: 智能车控制:该区域有5个Button,用于控制小车的运行状态。 Part-4: 传感器数据显示区 Part-5: 消息监控区,实时打印网络接收到的log。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/d9f34a907a5d18058bebac6cd0881652.png.webp) ### 3.4.3 程序架构 本程序使用Visual stdio 2022 开发工具编写代码,开发语言为C#, 其程序框架结构如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/42e3be693c4fb7811e72723639cada60.png.webp) **UI设计框架** ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/9d11b723a5150e7f25eba2c3b8cea629.png.webp) ## 3.5 RT-Thread Nano版本在STM32F103上的移植 笔者使用STM32F103板卡作为电机的控制模块,为了更好的利用STM32F103的资源,这里选用RT-Thread Nano版本作为该MCU的操作系统。在使用该系统之前,需要移植该系统,其具体步骤如下: **Step -1:** 在Keil IDE上选择RTOS(笔者已经安装了RT-Thread packet) ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/6c046561de2250686eaacf95f9c50029.png) **Step-2: 配置相关的代码** 1)在board.c文件中添加MCU的时钟初始化函数 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/8a770933f3ec1d11841b9fcfb710060e.png.webp) 2)在rtconfig.h文件中使能RT_USING_CONSOLE ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/bc070c12ec675f5e7d4d8cc10a30f7e9.png.webp) 3) 实现console的相关接口 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/9b225386e335725dbe1e61482ff8d83a.png.webp) 4)控制台命令接口 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/c20e4d275b40fdaf997cfc03c687af9c.png.webp) 5) SysTick_Handler函数调用rt_os_tick_callback函数 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/92cf9be2b4b2d6f91421dcf18088ac05.png) step-3: 测试RT-Thread运行情况,当系统打印如下log信息,说明RT-Thread在板卡上已经移植成功。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/2e8528e3c1b0858e1bef2189713dd64e.png) # 4 功能测试 ## 4.1 传感器数据上传功能测试 **功能一:** Version board读取温度、湿度、光照强度、距离数据,并将这些数据显示在OLED屏幕上 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/aaa01f4d4fbb0c7f5dbe62ddfc4c154a.png.webp) **功能二:**Version board 通过WIFI连接上位机PC-App version board 连接上服务器的log信息 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/c1642ad3cc8e030ea9b468307038c3f2.png) PC-App上监测到Version board的连接信息,并收到message,同时在数据显示区,实时展示传感器的数据信息 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/e30a11695b85687351e98c417290d6a0.png.webp) **功能三:**微信小程序通过蓝牙接收到sensor 数据并实施显示出来 1)启动微信小程序真机调试功能 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/f0c305ea51b73eed98ca63bc004ca931.png.webp) 2)手机客户端启动App,并得到Sensor数据 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/dea54e3693ff5a73bdb19ad505be87ac.png.webp) ## 4.2 小车功能实验测试 ### 4.2.1 蓝牙App控制小车运行(实验测试) 测试视频链接地址: [[24嵌入式大赛-Vision-Board\]测试视频-3:APP控制小车运行轨迹_哔哩哔哩_bilibili](https://www.bilibili.com/video/BV1fppbeFEL2/?spm_id_from=333.999.0.0&vd_source=238f39a6104fe1d95e2bb023d20e044f) [微信小程序和蓝牙模块控制小车运行状态_哔哩哔哩_bilibili](https://www.bilibili.com/video/BV112nZeJEsK/?spm_id_from=333.999.0.0&vd_source=238f39a6104fe1d95e2bb023d20e044f) ### 4.2.2 WIFI连接PC-APP控制小车运行(实验测试) step-1: 在PC-App上配置手动模式 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/188d912acc80dbf800e367f908ea087c.png) Step-2: 点击方向按钮控制小车 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/f325f31c1565e186d4b34149e8a23880.png) Version board 收到上位机发送的log: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240910/caff74156d627eb613ac053bf1daee54.png) 测试视频链接: [[24嵌入式大赛-Vision-Board\]测试视频-1:基于Vision-Board的智能应急环境监测控制小车之自动模式寻迹模式_哔哩哔哩_bilibili](https://www.bilibili.com/video/BV1t2pbeyEpc/?spm_id_from=333.788.recommend_more_video.-1&vd_source=238f39a6104fe1d95e2bb023d20e044f) [[24嵌入式大赛-Vision-Board\]测试视频-2:基于Vision-Board的智能应急环境监测控制小车之手动模式控制小车运行轨迹和环境参数数据实时上传_哔哩哔哩_bilibili](https://www.bilibili.com/video/BV1m2pbeCEGy/?spm_id_from=333.999.0.0&vd_source=238f39a6104fe1d95e2bb023d20e044f) # 5 源代码地址 https://gitee.com/mftang/rt_-thread_2024_race # 6 参与竞赛发表的文章 1. Renesa Version Board开发RT-Thread 之I2C驱动应用(SHT20) https://club.rt-thread.org/ask/article/dd1f75cef92eb8d3.html 2. Renesa Version Board开发RT-Thread 之超声波测距模块(HC-SR04) https://mftang.blog.csdn.net/article/details/141173766?spm=1001.2014.3001.5502 3. Renesa Version Board开发RT-Thread 之I2C驱动应用(OLED) https://mftang.blog.csdn.net/article/details/141098050?spm=1001.2014.3001.5502 4. Renesa Version Board开发RT-Thread 之UART驱动应用 https://mftang.blog.csdn.net/article/details/141528671?spm=1001.2014.3001.5502 5. Renesa Version Board和微信小程序通信 https://mftang.blog.csdn.net/article/details/141689315?spm=1001.2014.3001.5502 6. Renesa Version Board开发RT-Thread 之Client(WIFI)和上位机的数据传输 https://mftang.blog.csdn.net/article/details/141759509?spm=1001.2014.3001.5502 7. RT-Thread的内存管理原理和应用 https://mftang.blog.csdn.net/article/details/141967218?spm=1001.2014.3001.5502 8. RT-Thread Nano版本在STM32F103RB上的快速移植 https://mftang.blog.csdn.net/article/details/142069487?spm=1001.2014.3001.5502 9. 寻迹模块TCRT5000的应用原理和功能实现(基于STM32 https://mftang.blog.csdn.net/article/details/142024673?spm=1001.2014.3001.5502 10. Renesa Version Board开发RT-Thread 之I2C驱动应用(SHT20) https://club.rt-thread.org/ask/article/dd1f75cef92eb8d3.html 11. Renesa Version Board开发RT-Thread 之I2C驱动应用(ISL29035)https://mftang.blog.csdn.net/article/details/141037813?spm=1001.2014.3001.5502 12. fatal error: sensor.h: No such file or directory https://club.rt-thread.org/ask/question/0c86d6373012822a.html 13. RT-Thread Studio搭建 Renesa Version Board开发环境 https://blog.csdn.net/mftang/category_12742292.html?spm=1001.2014.3001.5482 14. Renesa Version Board开发之RT-Thread 下IO驱动的应用 https://mftang.blog.csdn.net/article/details/140753230
1
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
mfang2023
南亭少翁
文章
2
回答
0
被采纳
0
关注TA
发私信
相关文章
1
RT-THREAD在STM32H747平台上移植lwip
2
正点原子miniSTM32开发板读写sdcard
3
反馈rtt串口驱动对低功耗串口lpuart1不兼容的问题
4
Keil MDK 移植 RT-Thread Nano
5
RT1061/1052 带 RTT + LWIP和LPSPI,有什么坑要注意吗?
6
RT thread HID 如何收发数据
7
求一份基于RTT系统封装好的STM32F1系列的FLASH操作程序
8
RT-Thread修改项目名称之后不能下载
9
rt-studio编译c++
10
有木有移植rt-thread(nano)到riscv 32位MCU上
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
ART-Pi
FinSH
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
rt-smart
FAL
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
flash
packages_软件包
cubemx
PWM
freemodbus
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
socket
flashDB
中断
Debug
编译报错
msh
rt_mq_消息队列_msg_queue
keil_MDK
C++_cpp
ulog
at_device
SFUD
本月问答贡献
出出啊
1515
个答案
342
次被采纳
小小李sunny
1438
个答案
289
次被采纳
张世争
786
个答案
168
次被采纳
crystal266
546
个答案
161
次被采纳
whj467467222
1222
个答案
148
次被采纳
本月文章贡献
出出啊
1
篇文章
6
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
2
次点赞
crystal266
2
篇文章
1
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部