本系列以轮式平衡移动机器人为例,将使用基于模型设计(MBD)方法进行介绍,涉及基础硬件、软件、控制算法等多方面内容,结合MATLAB/Simulink的强大仿真能力和代码生成能力辅助设计!在此过程中可以系统了解开发全流程,学习到各种知识!
一、软件配置
1、MATLAB/Simulink
很熟悉,不再赘述,也可见以下系列
《Simulink系列》专栏http://t.csdnimg.cn/d4NDP
第2和3都可以看作软件包,服务于Simulink。
2、controlSUITE
是TI(德州仪器)为C2000开发者提供的资料库和参考工具包。其中C2000每个型号都有对应的样例、手册和设计指导,还有各种开发板平台的原理图、PCB图和使用说明。安装该软件的目的是在生成代码的过程中,matlab可直接从中找到编译时所需的头文件、库文件和支持代码。与Code Composer Studio一样的安装路径,都在c或d盘的ti文件夹
安装步骤这个博客写的很详细https://blog.csdn.net/weixin_42042288/article/details/110044979
软件主页面如下:
3、Embedded Coder Support Packages
全称Embedded Coder Support Packages for Texa Instruments C2000硬件支持包,能够生成一个实时可执行文件,并将其下载到TI开发板。自动生成C代码,并在方框图中插入I/O设备驱动程序。这个可以在matlab主页面,直接找到获取硬件包下载。
它其实可看作C2000 Simulink开发工具包,打开Matlab软件,单击“附加功能”下的三角,然后单击“获取硬件支持包”,这时一般会出现matlab检测不是正版无法下载的情况(需要续订),这时需要用另外的方法。
其他方法https://blog.csdn.net/qq_32892383/article/details/130630557
把下载的setup放在工程目录下,双击即可启动安装。
4、Code Composer Studio(CCS)
是一个代码调试器,代码设计套件,缩写为CCS,可提供强大的核心功能与便捷的配置和图形可视化工具。包含一整套开发和调试嵌入式应用的工具,包含使用于每个TI器件系列(德州仪器的模拟器件)的编译器、源码编辑器、项目构建环境、调试器、描述器、仿真器等。集成了DSP代码生成工具、数据传输工具等,主要用于生成可以烧写进芯片的执行文件,这是纯matlab所不具备的。
CCS下载官网https://www.ti.com/tool/download/CCSTUDIO/9.0.1.00004
点击接受
路径中c可改为d,但是其他最好别改,防止后续与matlab互相读取数据错误。
这里只选择C2000 real time MCUs,如果有其他需要可以多选。
这里保持默认即可,有需要可以多选。
点击finish,完成安装。
软件界面如下:
在CCS软件中可以添加2,3两个包
总结下来我们下载的app有两个:MATLAB/Simulink和Code Composer Studio(CCS)、软件包两个:controlSUITE和Embedded Coder Support Packages !
二、硬件准备
使用软件平台(算法和模型)搭建而成代码需要在硬件实验平台上进行实验,硬件平台主要分2部分:
1、机械部分
铝合金板若干、电源(充电宝)、电动机、编码器、轮胎、安装支架、紧固件若干、排线、数据线等。这些用于承载控制板,保证实验的稳定性和可靠性。
2、电控部分
(1)主控制板:运行控制程序,实现控制信号的输出与外部电平的采集。包括仿真电路与主控芯片,保证主控板在脱离其他模块时也能独立仿真与程序的运行,所有功能引脚通过Forest S1引脚引出。
主控芯片选择TIC2000系列 DSP控制芯片 TMS320F28069。JTAG 相关引脚 与 FT2232 相连,除 了 LED 灯 与 KEY 用 到 的 I/O 口 以 及 CAN connector接口,其余功能引脚引到主控板的P2和P3处(见Forest S1部分示意图)。
仿真电路采用的是 XDS100V2 仿真器,对 TI全系列芯片兼容。首先将 USB 口的5V 电压通过 TLV1117LV33电压转换芯片转换到3.3V 为主控 TMS320F28069芯片以及 USB转串口芯片 FT2232H 供电,仿真电路与主控电路通过多通道的数字隔离芯片ISO7240、ISO7231与主控电路进行电磁隔离,保证主控电路的稳定运 行;其中93LC56BT-IOT 为2KB的 Microwire兼容串行的 EEPROM,用于存储烧写的仿真器固件。
(2)电源板:将锂电池的电压转换到主芯片、驱动芯片及传感器合适的工作电压。充电宝的输出电压一般为12V,使用 XL2596S 将 12V 转 化 为 5V,使用 TLV1117LV33将5V 转化为 3.3V。得到的5V 与3.3V 通过 ForestS1引脚对外输出,而12V 则单独通过tb1向电动机驱动板输出。
(3)驱动板:驱动电机运行。结合有刷直流电动机的原理,平衡移动机器人采用的是 TI公司的 TB6612系列的有刷直流电动机驱动芯片。TB6612电动机驱动芯片有两个全桥电路可以同时驱动两个直流无刷电动机,其中一个简单的PWM 接口便可以方便地对控制器电路进行接入,峰值输出电流 为2A,宽电源电压范围为2.7~10.8V。
(4)传感器模块:陀螺仪加速度计传感器、蓝牙通信模块、显示器。
加速度计传感器使用Invensense公司的 MPU6050系列芯片,集成了三轴加速度 计和陀螺仪,可实现对各个方向角度和速度的解算。通过IIC 接口可以进行3个方向的加 速度信号和角速度信号的读取。
蓝牙串口采用的是德州仪器的 CC2541系列芯片,支持 AT 指令,功耗低,收发灵敏度高,具有宽泛的电源电压范围,不使用外部前段 而支持长距离应用,可以通过蓝牙4.0协议快速地与手机、计算机等设备建立连接,从而接 收串行数据,实现远程遥控。
显示器采用OLED。
(5)Forest S1控制底板:其引脚引出各种外设的功能接口,集成度高,使用便捷,示意图如下。
其引脚与主控芯片的连接关系如下:
硬件部分的准备成本太大,可以先不用硬件,先熟悉整个开发流程即可,后续可需求软件平台进行硬件仿真!
往期精彩
STM32专栏(付费9.9)http://t.csdnimg.cn/E2F88
OpenCV-Python专栏(付费9.9)http://t.csdnimg.cn/zK1jV
AI底层逻辑专栏(付费9.9)http://t.csdnimg.cn/zic0f
机器学习专栏(免费)http://t.csdnimg.cn/FaXzAFreeRTOS专栏(免费)http://t.csdnimg.cn/SjIqU电机控制专栏(免费)http://t.csdnimg.cn/FNWM7