0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

智能车的运动控制系统介绍

麦辣鸡腿堡 来源:CSDN博客 作者:小向是个Der 2023-11-14 15:54 次阅读

运动控制系统是通过控制电机电压、电流、频率等输入量,来满足工作机械的转矩、速度、位移等机械量,使各种工作机械按照人们期望的要求运行,以满足生产及应用的需要。

运动控制系统由电机、功率变换装置、控制器及相应的传感器构成,其框图及涉及学科领域如下图:

图片

对照运动控制系统的结构框图,可以推断出智能车中的运动控制系统如下:

图片

被控对象

电机是门深奥的学问号称自动化专业的天书之最(笔者当初被电机学折磨的有阴影,故有关电机不做分析)。

(此处所提到的电动机都是车模上指定的普通直流电机,不包括十七届中的无刷电机)智能车中的电机都是用于调速系统的拖动电机,而舵机则是用于伺服系统的伺服电动机的一种。

执行机构

功率放大与变换装置在智能车系统之中指的是电机驱动,能够根据主控输出的信号,动态的调节被控对象(直流电机)的驱动电压来控制电机的转速从而达到控制车身速度的作用。

控制器

智能车运动控制的控制器一般采用数字PI控制(关于PI控制器后面会出一篇PID的文章描述),大家姑且先把PI控制器当做一个公式,只用输入误差,输出的就是根据内部算法计算后的结果。这里借用龙邱科技的 代码片。

// An highlighted block


typedef struct
{
  float                kp;         //P
  float                ki;         //I
  float                kd;         //D
  float                imax;       //积分限幅
  
  float                out_p;  //KP输出
  float                out_i;  //KI输出
  float                out_d;  //KD输出
  float                out;    //pid输出
  
  float                integrator; //< 积分值
  float                last_error; //< 上次误差
  float                last_derivative;//< 上次误差与上上次误差之差
  unsigned long        last_t;     //< 上次时间
}pid_param_t;


pid_param_t Speed_PID;


Speed_PID.kp = 130;
Speed_PID.ki = 2.5;
Speed_PID.kd = 0.25;
/*************************************************************************
*  函数名称:void Motor_Control(void)
*  功能说明:电机控制
*  参数说明:
*  函数返回:
*  修改时间:
*  备    注:这类设计PID运算的函数一定要放在定时器中断内保持控制周期稳定
*************************************************************************/
void Motor_Control(void)
{
  MotorDuty1 = (int)PidIncCtrl(&Speed_PID, Target_Speed -       ECPULSE1);
    if(MotorDuty1 > 8000)MotorDuty1 = 8000;else if(MotorDuty1 < -8000)MotorDuty1 = -8000;
    if(Speed_PID.out > 8000)Speed_PID.out = 8000;else if(Speed_PID.out < -8000)Speed_PID.out = -8000;
    Motor1Ctrl(MotorDuty1);
    // 电机闭环控制
}




/*************************************************************************
*  函数名称:float constrain_float(float amt, float low, float high)
*  功能说明:pid增量式控制器输出
*  参数说明:
* @param    pid     pid参数
* @param    error   pid输入误差
*  函数返回:PID输出结果   注意输出结果已经包涵了上次结果
*  修改时间:2020年4月1日
*  备    注:
*************************************************************************/
float PidIncCtrl(pid_param_t * pid, float error)
{
  
  pid- >out_p = pid- >kp * (error - pid- >last_error);
  pid- >out_i = pid- >ki * error;
  pid- >out_d = pid- >kd * ((error - pid- >last_error) - pid- >last_derivative);
  
  pid- >last_derivative = error - pid- >last_error;
  pid- >last_error = error;
  
  pid- >out += pid- >out_p + pid- >out_i + pid- >out_d;
  
  return pid- >out;
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电机控制
    +关注

    关注

    3534

    文章

    1876

    浏览量

    268740
  • 运动控制
    +关注

    关注

    4

    文章

    579

    浏览量

    32855
  • 智能车
    +关注

    关注

    21

    文章

    403

    浏览量

    76952
收藏 人收藏

    评论

    相关推荐

    基于电磁传感器路径识别的智能车控制系统

    文中介绍一种基于电磁传感器路径识别的智能车控制系统系统采用Freescale16位单片机MC9S12XS128为核心控制器,利用4个电磁传
    发表于 03-29 17:23 9475次阅读
    基于电磁传感器路径识别的<b class='flag-5'>智能车</b><b class='flag-5'>控制系统</b>

    菜鸟一枚 0基础做毕设 基于labview的智能车控制系统的设计

    设计目标:①软件设计基于单片机的智能车系统;②实现操作界面登录功能;③实现管理员操作系统界面功能;④实现用户操作系统界面功能;⑤实现智能车
    发表于 04-26 20:55

    基于labview的智能车控制系统

    求各位大神分享资料软件实现智能车控制系统飞思卡尔
    发表于 04-26 23:15

    智能车系统解决方案总体设计

    大神提出改善的建议。资料在闯客网技术论坛下载 整个系统分为悬停半空的摄像头识别系统和地面的智能车控制系统,这两个系统均采用MKL26Z256
    发表于 10-24 19:17

    怎么实现基于9S12DG128的智能车控制系统设计?

    本文介绍了一种智能车控制系统的设计与实现方法。通过大量实验测试证明,该智能车能快速平稳地在制作的赛道上跟踪黑色引导线并行驶,而且寻迹效果良好,控制
    发表于 05-18 06:46

    基于NRF24L01的智能车控制系统设计

    摘要:针对智能车控制系统, 选用STC89C52作为整个系统的主控芯片, 并进行硬件电路设计;以NREF24L01作为无线接收模块, 选取E18-D80NK-N红外光电传感器作为避障模块的核心器件
    发表于 08-23 07:49

    怎样去设计一种基于HC-SR04模块的智能车控制系统

    如何利用超声波测距来实现智能车报警的功能呢?怎样去设计一种基于HC-SR04模块的智能车控制系统
    发表于 10-18 09:31

    智能车速度控制系统设计与实现

    智能车速度控制系统设计与实现 在智能车竞赛中,速度控制不能采用单纯的PID,而要采用能够在全加速、紧急制动和闭环控制等多种模式中平稳切
    发表于 11-23 21:12 3258次阅读
    <b class='flag-5'>智能车</b>速度<b class='flag-5'>控制系统</b>设计与实现

    飞思卡尔智能车控制系统设计

    本文介绍了一种基于红外反射式光电传感器路径识别的智能车控制系统。单片机获得传感器采集的路面信息和车速信息,经过分析后控制 智能车 的舵机转向
    发表于 07-06 17:16 164次下载
    飞思卡尔<b class='flag-5'>智能车</b><b class='flag-5'>控制系统</b>设计

    智能车控制系统电路

    新手学习高校智能车最最基本的系统 小白原来做的时候整理的
    发表于 11-03 10:14 0次下载

    基于摄像头的智能车控制系统设计_高正中

    基于摄像头的智能车控制系统设计_高正中
    发表于 01-12 19:56 3次下载

    基于单片机和射频收发芯片实现智能车控制系统的设计

    设计有效的智能车控制系统必须首先掌握控制对象的特性。根据对智能车特点的分析,可以认为,智能车转向控制系统
    的头像 发表于 07-30 08:10 2554次阅读
    基于单片机和射频收发芯片实现<b class='flag-5'>智能车</b><b class='flag-5'>控制系统</b>的设计

    如何设计一个具有路径记忆功能的智能车控制系统的资料概述

    研究一种具有路径记忆功能的智能车控制系统。该智能车使用红外光电传感器实现路径识别,依靠电机驱动前进,使用舵机帮助智能车转向。该系统采用路径记
    发表于 12-07 17:20 16次下载
    如何设计一个具有路径记忆功能的<b class='flag-5'>智能车</b><b class='flag-5'>控制系统</b>的资料概述

    电磁智能车原理

    环境感知、规划决策和运动控制三大部分,涵盖了自动控制、模式识别、传感技术、电子、计算机、机械、能源等多个学科知识。 电磁智能车想要正常行驶在赛道上,必定是需要实时根据赛道的状态来调整车
    的头像 发表于 12-13 17:04 4231次阅读

    智能车浅谈——电机控制

    之前借用自动控制原理对智能车的方向控制做了一个简单的分析,今天继续分析智能车的电机控制,本文以电力拖动自动
    发表于 05-05 15:02 1次下载
    <b class='flag-5'>智能车</b>浅谈——电机<b class='flag-5'>控制</b>篇