Arduino Robot Car :
目前已完成:
1. 4WD马达驱动程序, Motor Driver 采用ST的L6206模块验证。——11.13
2. 2.4 inch TFT显示屏驱动程序,采用adafruit的TFT库编写。驱动IC:ILI9341。【后期用0.96 inch 12864屏替换】——11.16
3. EEPROM读写程序,arduino自带。用于记录路径数据,共1Kbyte 理论上可记录 (1024*8) / 5 个点。 ——11.16
待完成:
4. IR遥控器 支持——11.17
5. IR sensor , 硬件、软件。用于路径检测, 由于IO口不够,需要IIC扩展。
6. 按键&指示灯,硬件、软件。由于IO口不够,需要IIC扩展。
7. 0.96 inch 12864 IIC接口屏 ;【后期增加对诺基亚 5110屏、各个小尺寸TFT屏支持】
NXP smartcar 竞赛:
状态 : 计划筹备中
目标 : 独立图像处理模块,独立智能车运动控制模块【包含平衡车的三轴acc+三轴gyro】。
1、图像处理模块,硬件部分需要确定的方案:——11.17
Camera&LCD接口问题:
Camera: CMOS数字Camera接口种类很多,其中常见的有MIPI-CSI接口,DMIC接口。
MIPI-CSI在帧数、像素高的场合使用比较多,且为业内标准接口,对于没有CSI Host控制器的MCU来说无法使用该接口,但可以模拟,难度较大。
DMIC接口就是竞赛中我们使用的接口,但是飞思卡尔和NXP的MCU均没有DMIC标准接口的MCU,只能模拟,难度不大。
LCD: 接口一般有:MCU接口,RGB接口,MIPI-DSI接口
MCU接口:适用于小尺寸的TFT显示屏,以及点阵屏,他们都是8080接口。一般用于显示静态图片,参数信息。一般MCU都可以。
RGB接口:适用于中尺寸TFT显示屏,常见的有RGB888 、RGB565。可以用于显示静态图片及视频,720P以下。高性能MCU有LDTC接口可以用于 RGB接口屏。
MIPI-DSI接口:适用于大尺寸显示屏,业内标准接口。可以用于显示高帧率的视频。但是有该接口的MCU很少。
ESP8266&ESP32 wifi传输图片及视频的可能性验证——11.17~18
进行图像调试时,我们总希望能够直接看到原图,方便我们调试。除了用LCD显示外,我们也希望远程观察。wifi模块可以帮我们实现这个功能。
以一副240*320 灰度图像为例。240*320 = 76KBit 。串口波特率通常我们是115200bps,也就是每秒钟 14KBit ,很显然传输不了。240*320灰度图像再加上 帧率,加入我们是24帧,76*24 = 1824KBit = 1867776 bit 。相当于串口波特率要到1.86 Mbps。加上串口传输时的效验位,停止位。以及其他处理环节,可能需 要预备1.86Mbps * 4 = 7.44Mbps的速度。显然ESP8266 和ESP32的wifi传输速率可能够,但是串口传输速率远远达不到。因此这方面需要验证和优化。
——》图像处理方面的软件目前在结合《数字图像处理》和matlab学习中。确定好硬件方案后,搭建硬件环境,转为在硬件上验证。
2、运动控制硬件部分需要确定的方案(该部分暂时未做详细考虑)
运动学模型建立:目前了解到智能车符合阿克曼转动几何
运动数据记录:对小车形式过程中的舵机控制信号和电机控制信号完整记录。方便仿真时播放数据,模拟小车运动。
电机驱动:
单电机,2片BTN半桥驱动的方案成熟稳定。IR MOS驱动+功率MOS管方案经过前期验证,但不稳定。
双电机与单电机类似。
编码器:选择的硬件需要符合算法要求。
舵机:提高PWM脉宽的分辨率、舵机电源部分需要加大电容。
六轴Sensor :采用官方推荐方案,软件上尽量运用到FIFO。