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

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

3天内不再提示

采用西门子S7-200 PLC实现浆液下移动机器人控制系统设计

电子设计 来源:郭婷 作者:电子设计 2018-12-31 10:05 次阅读

目前,在移动机器人控制技术和PLC应用方面有很多人已经做了相关的研究工作。本文研究的机器人(小车)工作在大约40 m深的浆液下,为防止水煤浆由于长时间的存贮而沉淀,在按照规划的轨迹移动时完成搅拌水煤浆功能。基于超声波传感器电子罗盘的实时测量位姿信息,查模糊控制表,控制电机,使机器人能及时、连续、平稳、按规划轨迹运行。采用西门子S7-200系列PLC作为主控制器来实现对浆液下移动机器人的控制。

1 控制系统基本构成

在移动机器人的应用中,精确的位姿是跟踪控制首要解决的问题。为此,本机器人的定位采用了超声波网络定位系统,导航采用了电子罗盘。整个控制网络如图1所示。

采用西门子S7-200 PLC实现浆液下移动机器人控制系统设计

图1 机器人控制网络

PLC系统为控制系统的核心,做主站管理各从站,起到总的控制作用,通过RS-485总线同各个从站进行数据传递。PLC把各个从站得到的信息经过加工处理后,得到最终的控制命令传给电机,控制机器人进行准确的行走。TD200可对PLC的参数进行实时的修改,达到实时控制的需要。

1号单片机、2号单片机、3号单片机记录发射超声波信号在介质中的传播时间,乘以超声波的传播速度,可以计算出相应的距离,通过定位算法便可对机器人进行定位。超声波在介质中的传播速度随温度变化,有着特定函数关系,因此可以借助温度传感器对超声波的速度进行修正。电子罗盘可获得小车的姿态,实现小车的导航。

操作员通过无线通信的方式达到对机器人的无线控制。无线控制是对有线控制的一种辅助措施,使机器人能得到更理想的控制效果。当主控制系统控制失效,机器人出现意外情况,通过定位系统测量发现机器人偏离规划轨道,此时,利用无线控制可使机器人及时回到规划轨道。

2 网络通信

2.1 通信协议的选择

S7-200 PLC支持多种通信息协议,如点到点接口(PPI)、多点接口(MPI)、PROFIBUS及用户自定义协议等。

通过使用接收中断、发送中断、字符中断、发送指令(XMT)和接收指令(RCV),自由端口通信可以控制S7-200 CPU通信口的操作模式。利用自由端口模式,可以实现用户定义的通信协议,连接多种智能设备。

CPU处于STOP模式时,自由端口模式被禁止,CPU重新建立使用其他协议的通信,例如与编程设备的通信。只有当CPU处于RUN模式时,才能使用自由端口模式。通过向SMB30(端口0)的协议选择域置1,可以将通信端口设置为自由端口模式。处于该模式时,不能与编程设备通信。SMB30其他位还可以设置端口0通信的波特率和奇偶校检等参数。在此,我们所研究的机器人采用了自由端口模式。通信协议我们采用Medbus协议。Modbus协议是美国可编程控制器供应商Modicon公司制定的一种工业通讯协议,现在已经被许多工控厂商所支持,广泛应用于智能仪表、总线控制等领域。其物理层遵循RS-485标准,RS-485总线具有信号传输速率快、传输距离更远、抗干扰能力强等优点,其接口可以有多个驱动器接收器,很容易实现PLC与多台智能设备之间的通信。

2.2 网络通信的关键技术

在接收信息时我们采用了接收中断而没用接收指令(RCV)。接收字符中断是每当接收缓冲区SMBZ中接收到一个字符便产生一次中断,能在中断中对所接收到的字符进行适时处理,如果不正确,能及时进行第二次或更多次的发射和接收一直到达成功,并不影响字符和字符间的接收工作。更确切的说对字符的处理是在接收字符之间的间隙进行的。但是RCV指令一次性的接收完对方发射的所有信息,最后一个字符接收完,执行中断事件才能对所接收到的字符进行处理,如果不正确,到这时才能重新发射和接收,这与上一种方法相比浪费了时间。两种方法所用到的全局变量VB是一样的,用接收指令RCV程序会简洁些,但是从适时的角度我们选择了接收字符中断。

PLC是主站,1号单片机、2号单片机、3号单片机、无线通信模块、温度传感器、电子罗盘都作为从站,地址依次是3lH,32H,33H,34H,35H,36H。当各从站都没有出现故障,且主站同各从站通信,从站都能给与正确的回应信息时,建立起的地址轮询表是3lH,32H,33H,34H,35H,36H。主站按照这个地址轮询表所建立起的地址同各从站进行数据通信。当某一个从站出现故障,如2号单片机同主站不能进行通信,建立起的地址轮询表是31H,3H,34H,35H,36H。主站按照这个地址轮询表同各从站进行数据通信,并及时报警要求查找故障。但是这时并不影响对小车的控制,因为通过1号单片机、3号单片机仍然能对小车进行定位,仅仅是定位的精度不十分精确。整个控制过程没有间断而是连续的进行。

我们可以根据报警信息,查出有故障的单片机。当查好后我们可以通过TD200或无线通信模块向主站告诉故障已经解除。要求主站重新建立地址轮询表,建立地址信息。按照重新建立的地址轮询表发射数据信息。

3 电机控制

西门子S7-200系列PLC的高速脉冲输出功能是指在PLC某些输出端产生高速脉冲,用来驱动负载实现精确控制。PLC主机最多可提供2个高速脉冲输出端,即Q0.0或Q0.1。每个高速脉冲发生器对应一定数量的特殊寄存器,包括控制字节寄存器,状态字节寄存器和参数数值寄存器,它们用以控制高速脉冲输出形式,反映输出状态和参数值。PLC控制电机中通过脉冲输出指令(PLS)检查为脉冲输出(Q0.0或Q0.1)设置的特殊存贮器位(SM),然后启动由特殊存储器位定义的脉冲操作。脉冲由Q0.0或Q0.1输出控制电机。

如何控制电机,使小车能及时以直线、曲线、停止的方式进行运行,且运行过程连续、平稳,避免小车出现异常行为,如突然的大转弯、急刹车等,是我们必须要解决的一个重要问题。因此,小车的启动、每步控制之间的过渡、停止都要处理好,输出脉冲的周期要连续,解决方法如下。

采用西门子S7-200 PLC实现浆液下移动机器人控制系统设计

图2 电机控制

图2中f轴表示:频率;t轴表示:发射脉冲数。小车刚开始启动阶段以f1的频率启动,加速到f2,发射的脉冲数是t1-t0。,然后以f2的频率匀速,规定每4 s对小车进行一次定位和控制,假设在t2时正好是4 s,开始对小车进行控制,但是,定位和控制过程需要一段时间,当发射控制命令时,小车可能已不在原来定位的点。此时时间已超过4 s,设此时滞的时间为t,计算所要执行的程序量,t的最大上限值是0.1 s,这么小的时间完全可以忽略,在时滞的时间内让小车仍以原来发射脉冲频率运行,当发射的脉冲数是t3时开始对小车进行了新的控制,小车进行下一步的运行。然而,此刻仍以前一步的频率为开始发射频率。

转换办法是通过两条命令:①MOVB 0,SMB67;②PLS 0。使前一步的运行立刻停止,接着调用新的包罗段控制小车进行下一步的运行,下一步的开始周期是前一步的结束周期,加速或减速到本步规定的周期(如图2所示),加速或减速的时间尽可能短,以此周期匀速运行。小车在运行的整个过程中每步之间处理方法都是这样。图中所示为频率减小到f5小车停止。采用此方法后小车的运行是连续平稳的。

4 软件设计

控制系统程序流程框图如图3所示,整个程序共有4大块组成:①对S7-200各个变量、中断初始化;②主站同各从站进行信息通讯;③进行定位处理;④控制电机。

采用西门子S7-200 PLC实现浆液下移动机器人控制系统设计

图3 程序流程框图

整个程序量是巨大的,合理安排程序结构显得很重要。当没进行通信时,S7-200反复扫描执行周期,出现字符中断时,对接收到的信息进行保存处理,因为S7-200顺序执行的特点,这要在很多执行周期内完成。但是每个执行周期的时间都是短暂的。所有的从站都通信完毕,调用定位子程序求出小车所在的空间位置。然后顺序调用模糊控制子程序、电机控制子程序。这三大块子程序要在同一周期内完成,此周期执行时间是最大的,程序必须简单实用,使执行周期尽可能的降到最小值,减小控制的时滞。从宏观上看扫描周期显现出伸缩性的特点。

5 结束语

针对浆液下移动机器人的功能要求及PLC所具有的特点,搭建的浆液下移动机器人控制网络具有特性,实现了网络间的通信,对电机控制方法进行了探讨,使电机能连续平稳的运行,最后对整个控制系统的软件程序进行了设计。本文所涉及到的工作已调试成功。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制系统
    +关注

    关注

    41

    文章

    5963

    浏览量

    108711
  • 机器人
    +关注

    关注

    206

    文章

    27033

    浏览量

    201400
  • plc
    plc
    +关注

    关注

    4975

    文章

    12254

    浏览量

    454909
  • 超声波
    +关注

    关注

    63

    文章

    2808

    浏览量

    136712
收藏 人收藏

    评论

    相关推荐

    S7-200西门子PLC视频教程大全

    以下是西门子S7-200PLC视频教程,全文共有36个视频。详细介绍了西门子S7-200PL的各种概念,基础的知识,及各案例的讲解。 1、S7-20
    发表于 09-26 09:15 11.9w次阅读

    一种小型移动机器人控制系统研究

    一种小型移动机器人控制系统研究
    发表于 08-20 15:53

    移动机器人运动控制系统设计及控制算法研究

    移动机器人运动控制系统设计及控制算法研究
    发表于 08-20 15:54

    Labview My RIO 移动机器人

    初次使用 NI MyRIO控制器开发四轮全向移动机器人,由四个全向轮和直流电机与增量式编码器和NI 9001控制器组成,安装了红外距离和光电传感器。驱动板由官方提供的H桥驱动板。NI 9001由
    发表于 08-21 12:20

    机器人、协作机器人移动机器人,你分的清楚吗

    我觉得现在是时候讨论一些更有趣的话题,今天的话题是介绍工业机器人、协作机器人移动机器人。我想每个人都知道机器人是什么。机器人是可怕的大型
    发表于 10-30 11:33

    基于FPGA怎么实现三轮全方位移动机器人运动控制系统

    研究了一种用FPGA技术实现三轮全方位移动机器人运动控制系统的方法,与双DSP结构,DSP+CPLD结构,以及DSP+专用集成电路结构等相比,该方法具有简单可靠,扩展性强等特点。且FPGA设计简单,使用方便,开发周期短,能够
    发表于 10-22 07:35

    如何实现移动机器人的设计?

    ,导航技术,计算机技术,人工智能等多个领域,因而对移动机器人控制部分提出很高的要求,特别是视觉传感器的出现,要求控制系统不仅存储量大,而且处理速度快等。以往基于PLC和单片机
    发表于 11-23 15:08

    请问怎么设计一种室外移动机器人组合导航定位系统

    怎么设计一种室外移动机器人组合导航定位系统?如何实现室外移动机器人组合导航定位系统的硬件设计?如何实现
    发表于 04-19 10:50

    什么是移动机器人软硬件系统问题

    的实践经验,来系统的梳理一下什么是移动机器人软硬件系统问题。文中涉及到的开源项目网站地址如下:开源项目网站Handsfree
    发表于 08-06 06:13

    PLC浆液下移动机器人控制系统

    PLC浆液下移动机器人控制系统   摘要:结合浆液下移动机器人
    发表于 04-21 17:58 735次阅读
    <b class='flag-5'>PLC</b>的<b class='flag-5'>浆液</b><b class='flag-5'>下移动机器人</b><b class='flag-5'>控制系统</b>

    西门子S7-200 PLC应用100例

    西门子S7-200 PLC应用100例》主要以西门子S7-200 PLC为主体,按基础知识、扩
    发表于 09-17 10:02 673次下载
    <b class='flag-5'>西门子</b><b class='flag-5'>S7-200</b> <b class='flag-5'>PLC</b>应用100例

    西门子S7-200使用教程

    西门子S7-200 PLC仿真软件超详细使用教程西门子S7-200使用教程
    发表于 05-06 16:43 0次下载

    西门子S7-200集中供热锅炉控制系统PLC控制

    西门子S7-200集中供热锅炉控制系统PLC控制说明。
    发表于 05-07 09:40 55次下载

    西门子PLC S7-200与V80组合的位置控制系统简介

    控制系统的使用做一个说明,为用户在调试过程中提供一些参考。   在由西门子PLC S7-200系列和西门子SINAMICS V80组成的位置
    的头像 发表于 03-09 15:36 1153次阅读

    西门子PLC S7-200 SMART PID控制功能分享

    S7-200 SMART采用了新型的设计方法,信号板可以扩展通讯接口,数字量接口,模拟量接口,并且能合理的分配空间。西门子PLC S7-200
    的头像 发表于 04-06 14:46 6883次阅读