简介
这是我在CSDN上面的第一篇博客,来分享一下我是如何用最短的时间进行智能小车的PID调速的。在疫情期间比较无聊,在某宝买了一个智能小车底盘和一堆零件,基于Arduino Due和树莓派进行开发,Due负责底层控制,树莓派进行上层控制器开发,比如斯坦利控制器或者模型预测控制器进行轨迹跟踪。
本次采用Simulink工具链完成,小车的所有代码均基于Simulink Target Support Package完成。
所需要的硬件&软件
1.普通带编码器的直流电机。
2.Arduino Due控制板及数据线(类似dSPACE MAB进行RCP开发,但是性能完全没有可比性,开个玩笑)。
3.Matlab&Simulink R2019b (民间通用版本即可)。
4.电脑一台。
前期准备工作
(1)安装Arduino硬件支持包
这并不是本文的重点,网上有许多这方面的教程,包括MATLAB录制的研讨会均有类似的视频教程。有意的同学可以自行查阅相关资料,十分简单。如下类似教程。
https://blog.csdn.net/u013732401/article/details/70161200
(2)Simulink模型
新建Simulink Model,并且打开Library Browser。找到Simulink Supprot Package for Arduino Hardware
按照下图搭建模型。其中Tachometer模块在硬件支持包中的Sensor模块里(2019b有,低版本2018