首页 » 通讯 » 若何用S7-1200从零开始搭建一个完整AGV控制系统_传感器_磁条

若何用S7-1200从零开始搭建一个完整AGV控制系统_传感器_磁条

雨夜梧桐 2024-11-08 16:58:35 0

扫一扫用手机浏览

文章目录 [+]

写在面前

本文先容自动导引车(AGV)掌握系统的实现过程,分为硬件搭建和软件设计两部分。

若何用S7-1200从零开始搭建一个完整AGV控制系统_传感器_磁条 若何用S7-1200从零开始搭建一个完整AGV控制系统_传感器_磁条 通讯

1. 车载掌握器

若何用S7-1200从零开始搭建一个完整AGV控制系统_传感器_磁条 若何用S7-1200从零开始搭建一个完整AGV控制系统_传感器_磁条 通讯
(图片来自网络侵删)

1.1 车载掌握器的类型

  车载掌握器是掌握系统乃至全体 AGV 的核心,那么该当选择哪种掌握器呢?根据笔者的履历,从硬件角度看,AGV采取的车载掌握器基本分为以下三种:

  1. PLC:代表产品例如西门子公司的 S7-1200和1500系列,利用 AGV 厂家有佳顺、嘉腾。
PLC 以稳定性好、可靠性高著称,但是它的长项是逻辑掌握,一样平常只能做大略的运动掌握。
西门子 PLC 的价格大概在2000元~12000元旁边。

  2. 工控机:代表产品例如倍福公司的 CX5130,利用厂家有昆船、罗伯特木牛流马。
工控机实在便是一台电脑,只不过经由精心的设计使其具有很强的抗滋扰能力,可以用于振动、电磁辐射等恶劣的工业环境。
工控机构造紧凑、体积小巧,其可以运行通用的操作系统,比如 Windows、Linux。
以倍福为例,安装它的 TwinCAT 掌握软件后,会在 Windows 操作系统中插入实时内核,将电脑变成适宜工业场合的实时掌握系统。
倍福工控机的售价大概在5000到30000元旁边。

  3. 单片机:代表产品例如 STM32,利用厂家有海通、机科。
比较前两者,单片机的价格低廉,加上外围器件本钱最多也不过千元旁边。
利用单片机的一个缺陷是,如果要做成成熟的产品,你须要花费很多精力设计外部电路以及各种底层算法。
软件开拓环境可能会差一些。

  上面的分类并不虞味着三者是泾渭分明的,例如 PLC 的核心芯片可能便是一个单片机;而工控机的编程措辞很可能就采取了 PLC 领域利用的梯形图、ST等措辞;单片机上面也可以装载操作系统,从而形成一个完全的掌握器。
以是,虽然它们各有自己适用的领域,但是相互之间也会取长补短,演化成你中有我我中有你的局势。

  当然,现在市场上有专门的AGV掌握器,例如美国NDC的CVC600,瑞士BlueBotics的ANT、浙江科聪智能的 MRC5000,上海仙知机器人的SRC。
与通用的工业运动掌握器或PLC比较,这类掌握器集成了成熟的导航和运动掌握算法,为用户省去很多事情,而且其稳定性和防护等级更高,但其价格也较高(2万~6万元)。

 

1.1 西门子 S7-1200 PLC

  我选择西门子的 S7-1215C 型 PLC 作为 AGV 的车载掌握器(往后简称为S1200),如下图所示。
由于西门子的产品型号非常丰富,各个型号在接口种类、性能等方面有细微的差别,在购买时为了准确描述详细是哪个型号,最好利用订货号。
西门子每种产品都有一个唯一的订货号,在采购时只须要供应这个编号即可。
在西门子的编程软件中也可根据订货号查找对应的型号。
当然,利用西门子的产品也有一些缺陷,比如它的PLC是通用产品,并不是针对车辆掌握而专门设计的。
淘宝上一个100元的ARM开拓板都具有RS485、CAN、以太网接口,而西门子却要为此付出昂贵的代价,西门子的产品开放性非常差。
以是,往后的AGV会逐步淘汰西门子的产品。

 

  

什么是上位机和下位机?

  有些设备能够访问其它的设备,比如读取内存中的数据、向内存写数据,这样的设备具有较高的权限和地位,因此被称为上位机。
有些设备只能被其它设备访问,而没有访问其它设备的权力,这样的设备就称为下位机。
在本文中,PLC便是下位机,而编程打算机便是它的上位机。

  想对PLC进行设置或编程,须要利用网线将 S1200 与上位机连接,只须要将上位机的 IP 地址设置为与 PLC 同一网段即可。
S1200 一样平常出厂默认的 IP 地址是 192.168.0.1,以是可以将你的电脑的 IP 设置为 192.168.0.2。
对付 AGV 这种移动设备,常日会采取无线通讯,例如吸收调度系统的掌握指令。
无线通信办法有 WIFI、ZigBee等等。
由于 WIFI 在实际中利用较多,我先容一下它的配置方法。
利用 WIFI 连接西门子 PLC 非常方便,只须要用网线将 PLC 的以太网口连接到无线路由器的 LAN 口,然后用条记本搜索到对应的 WIFI 后连接即可访问 PLC。
所用的无线路由器可以是任意品牌,乃至家用路由器都可以。
笔者在淘宝买过一款国产以太网转 WIFI 转换器,但奇怪的是不支持博途软件(博图无法访问到PLC),以是你购买前最好跟商家确认是否能用于博途。
如果你想追求更稳定可靠的通信,可以选择工业级通讯模块,例如摩莎(MOXA),它的供电电压兼容12V~48V。

  

2. 驱动器

  如果说车载掌握器是 AGV 的大脑,那么 AGV 还要有心脏和肌肉才能运动起来,驱动器给车轮的电机供应电流,相称于心脏。

2.1 低压驱动器品牌

  由于 AGV 普遍采取蓄电池供电,其电压一样平常在 12V~72V 旁边。
因此 AGV 利用的驱动器属于低压直流型伺服驱动器。
国外的低压驱动器品牌有:AMC、RoboteQ、ZAPI(萨牌)、Curtis(柯蒂斯)、Elmo(埃莫)等,中国海内的低压驱动器品牌有:步科、森创、英博尔、凯利。

2.2 PLC与驱动器通信

  PLC 要想掌握驱动器就要向它发送指令数据。
低端驱动器可以用仿照量或者脉冲旗子暗记通报数据,高端驱动器则采取规范的通信协议通报数据,这样的通信可以借助 RS-232、RS-485、CAN、EtherCAT 等协议实现。
由于 S1200 的 CPU 模块没有这些通讯接口,以是要想连接驱动器,须要购买额外的通信模块(CM:Communication Module)。
上面提到的几种协议西门子都有对应的通信模块支持,比如西门子的 232 、485 和 CANopen 通信模块如下图所示(这三种模块形状完备一样),把稳 232 和 CANopen 模块的插头是公头,而485的则是母头。

  对付移动设备来说,CAN总线是最常用的通讯办法,像汽车、挖掘机、AGV一样平常都采取CAN总线通讯。
CAN 总线的速率快(最高可达1Mb/s,比485要快)、稳定性高(采取差分旗子暗记,抗滋扰),更“智能”(有优先级和仲裁机制),因此该当优先选择 CAN 总线。
但是考虑到西门子本身没有 CAN通信模块(如果想利用CAN,要购买第三方公司HMS供应的CANopen模块),本文利用的驱动器采取 485 协议,以是我们选择485模块。
随之而来的一个问题是:S1200能外扩几个通信模块?答案是:3个。
不管是哪种通信模块,数量最多只能是3个,种类不限可以混用。
如果你的驱动器是总线型(485和CAN都属于总线型)的,那么只要一个485模块或者 CANopen 模块就行了。
把稳232不是总线型的,以是用两个驱动器就要添加两个通信模块。
如果你的 AGV 还有其它走通信协议的传感器(例如磁导航传感器、RFID传感器),那么3个通信模块很有可能就显得捉襟见肘。

  西门子485模块的接头采取了标准9 针D型插孔式连接器。
为了将驱动器和PLC连接起来,我们要购买DB9接头,并用旗子暗记线将两个头连接起来。
这里我们只利用两个旗子暗记线即可。
值得把稳的是,西门子的485接口定义和常规的485不一样,常规485的旗子暗记收发是1、2头,而西门子的485则是3、8头(参考手册的第1769页)。
以是在连线时,要按照 3-2、8-1的对应顺序焊接,如下图所示。

3. 移动机构

  AGV要想实现搬运、移载就要有移动机构,常日采取的移动机构有舵轮、差速轮和麦克纳姆轮。
它们各自有什么特点呢?什么场合又该利用哪种轮子呢?

  麦克纳姆轮的优点是运动精度高,但是构造繁芜,磨损严重,对地面挑剔,虽然麦克纳姆轮问世超过30年了,但是实际运用并不多,这也解释它不是一个实用的产品。
下面我们紧张讲解舵轮。

  舵轮是个高度集成的移动机构,由车轮、回转支撑、齿轮箱、驱动电机、转向电机、编码器、限位开关、制动器等部件组成,它既能供应牵引力,也可以主动转向,因此一个舵轮有两个自由度。
AGV 利用一个或以上的舵轮就可以实现全向移动:原地旋转、斜行、横移等等。
舵轮一样平常用于室底细况,以是轮面的材料多为聚氨酯。
根据电机的安装位置可以将舵轮分为两种:卧式和立式,分别如下两图所示。
卧式舵轮的驱动电机横向安装,因此整体高度很低,有些AGV对高度有哀求(例如潜入式的AGV要很矮才能钻到货色底下),这时就适宜利用卧式舵轮;立式舵轮的驱动电机竖着安装,其整体高度偏高,它的优点是方便将电机隔离起来,在有些场合(例如危险品工厂),哀求舵轮电机与外部环境隔离,这时就适宜利用立式舵轮。
国外紧张的舵轮生产厂家有:意大利的 CFR 和德国的 schabmuller(夏伯穆勒),后来从CFR中又独立出来了一个厂家——马路达。
这些舵轮生产厂家一样平常只卖舵轮,不供应驱动器,驱动器则由代理商供应。
一台AGV上最贵的部件便是舵轮,以一台本钱10万元旁边的AGV为例,如果配备两个舵轮,就须要4~5万元,占整车本钱将近一半。
不过好是,海内的舵轮厂家开始参与竞争,这将降落AGV的本钱。

4. 磁导航传感器和磁条

4.1 磁条

  磁条导航是目前 AGV 利用最多的导航办法之一。
只须要预先在地面铺设好磁条,AGV 就会沿着磁条形成的路径运动。
磁条一样平常宽3~5cm,它像胶带一样,一壁光滑、一壁带有粘性,将粘性的一壁粘贴在地面即可完成铺设。
磁条具有极性,在购买时把稳是N极还是S极,磁条的极性对应磁导航传感器的极性,但有些传感器两种都兼容。
磁条质地较软、不抗压,以是如果被轮子反复碾压可能会压扁或挤脱落。
多数 AGV 为了避免压坏磁条会将驱动轮支配在车体的两侧(差速形式)或者斜对称的位置上。

4.2 磁导航

  磁导航传感器也叫磁循迹传感器,它用来帮助AGV巡线行走。
磁导航传感器一样平常安装在AGV车体或者驱动轮组上,在AGV运动时始终保持在磁条上方一定高度内。
磁导航传感器相对付车体的安装位置一样平常在对称中轴线上,常日对称安装,例如前后各一个或者旁边各一个。
磁导航传感器的事理很大略,传感器上有多少个探头,每个探头都能检测磁场,位于磁条上方(一定高度内)的探头有旗子暗记输出,超出磁条的探头则没有旗子暗记。
探头常日俗称为“点”,点越多表示传感器的分辨率越高,当然价格也越贵。
传感器常日的点数有:6点、8点、16点几种。
磁导航传感器并不是什么神秘的东西,笔者曾经拆解过一款磁导航传感器,这里所说的探头无非有两种,一种是霍尔元件、还有一种是地磁传感器。
霍尔元件的特点大家大学的时候该当都学过,它能感应磁场,价格低但是精度常日不高;地磁传感器基本都采取美国 PNI 公司的产品。

它要搭配专用的驱动芯片 PNI-12927,这个芯片是3.3V供电,以是传感器内部要设计3.3V稳压电路,而且这个驱动芯片采取 SPI 总线,要对其旗子暗记进行处理和电压变换,这常日由单片机来完成。
磁导航传感器的输出旗子暗记可以是数字量也可以是总线型数据,对付点数多的传感器来说一样平常用总线型,由于如果利用数字量须要很多根线。
假设一个 AGV 利用4个传感器,每个传感器的分辨率是16点,那就要有4×16=64 4\times16=644×16=64个输出,相应的 PLC 该当有 64 个数字量输入口,其接线将非常繁琐,也随意马虎出故障(例如某根线连接不稳定)。

  磁导航办法实现大略,价格便宜,但是缺陷也不少,个中一个严重的问题是滋扰。
笔者在调试 AGV时创造,纵然传感器并不在磁条上方(有时乃至周围根本没有磁条),传感器依然有输出。
经由一番思考,笔者创造了问题所在。
AGV 前方有一条铁轨,而铁是随意马虎被磁化的。
不仅是铁制品,通电的导线也可能会使传感器误报。
以是,利用磁条导航要打消这些滋扰。

  磁导航传感器的输出可以是IO,也可以是数值(代表传感器偏离磁条中央的间隔值)。
 磁导航传感器如何与 PLC 连接?如上所述,如果传感器采取总线(例如485)通报数据,直接将总线连接到相应的(485)通信模块即可。
如果传感器采取数字量接口,那么就要连接到 PLC 的数字量输入口。
这里有个很主要的问题:你要清楚传感器输出的旗子暗记是 PNP 型还是 NPN 型,它对应了三极管的类型,它们的差异在于有旗子暗记时 PNP 输出高电平(例如24V),而 NPN 输出低电平(例如0V)。
在 S1200 上每组输入输出口阁下都有一个 COM 口,它的浸染便是选择输入是 PNP 型还是 NPN 型。
如果是 PNP 型,COM 口就要接 24V ,如果是 NPN 型就要接 0V。
你可以找个磁条用万用表测试一下,如果放到磁条上输出显示是24V那解释是 PNP 型。
往后你会知道,很多传感器都分 PNP 型和 NPN 型,它们的接法是一样的。

5. 供电系统

5.1 电池

  AGV启动时须要的电流大,因此须要利用动力电池,利用最多的动力电池有铅酸电池和锂电池。
铅酸电池寿命短、能量密度低,而锂电池密度高、但是本钱也高。
还有一种电池叫做超级电容,它的寿命很长,但是能量密度非常低,以是用的不多。

  有名的电池厂家有霍克(HAWKER)、荷贝克(HOPPECKE)等。
下图是霍克 AGV 专用电池标签。
铅酸电池的额定放电电流一样平常是0.5C,例如80Ah的电池,额定放电电流是0.5×80=40A 0.5\times80=40A0.5×80=40A。
铅酸电池的最大放电电流一样平常是3C,即3×80=240A 3\times80=240A3×80=240A。
电池的电压会随着电量花费逐渐降落,开始降落得很慢,当电量很少时会急剧低落。
根据这个关系,通过检测电压就能知道电池还剩余多少电,是否该当充电。

我们如何估计一个 AGV 该选用多大容量的电池呢?

  AGV 上最耗电的器件便是电机了。
一样平常来说,电机的额定功率 P PP会写在电机铭牌上。
根据初中物理知识,功率即是电压和电流的乘积,即

P=UI P=UI

P=UI

  驱动电机的额定电压一样平常随意马虎得到,以是通过上式可以打算出电流。
当然,实际事情的功率一样平常会比额定功率小,以是这里要乘以一个系数,详细要看 AGV 的负重、事情路面等。
求出电流乘以事情韶光便是电池的容量了。
把稳,电池的容量和能量是两个不同的观点,前者是电流乘以韶光(单位是“安时”(Ah))、而后者是电流乘以电压乘以韶光(单位是“千瓦时”(KWh))。

5.2 电压变换

  如果传感器、掌握器等器件和电池的输出电压不同,就须要利用电压变换模块,它还可以起到稳压的浸染。
一样平常传感器常用的电压是12V、掌握器常用的电压是24V,因此须要有相应的模块。
可以选择广州金升阳的电压变换模块,可选配散热片和导轨,便于散热和固定,如下图所示的48V转24V的模块。
选择模块时紧张关心的功率,即它能供应的最大电流。

6. 开关

6.1 电源开关

  选择电源总开关时要把稳它是“自锁的”还是“自动复位的”。
自锁的意思便是按下后纵然手指松开,开关依然保持闭合使供电畅通;而自动复位的开关按下按钮后如果松开手指,电路就会被割断,如下图所示。
一样平常机箱上的电源总开关该当选择自锁型的,否则你要一贯按着按钮才能使电路畅通,因此不要购买下图右所示的自复位型开关(代号:XB2-BA31C,价格在22元旁边)。
如果你买错了也不要紧,你可以再买一个自锁模块ZB2-BZ21 C,将这个模块添加到XB2-BA31C开关上就能将它变成一个自锁开关。

6.2 急停开关

  在所有AGV 车体上都能找到的一个东西便是急停开关。
根据国家标准GBT 20721-2006 《自动导引车 通用技能条件》中第4.2.6项的规定:“AGV 应配备紧急停车按钮,该按钮的安装位置在紧急情形下应便于操作。
应采取赤色按钮,急停按钮按下应关闭 AGV 驱动电源”。
在AGV失落去掌握的情形下,按下急停开关能让它立即停滞运动,从而防止侵害到人。
因此急停开关构成了末了的安全樊篱。
为了担保利用可靠,可以购买施耐德的XB2-BS542C。
急停开关的按钮一样平常设计得很大,方便按下,因此又被俗称为蘑菇头,它一样平常都是自锁的,按下后须要旋转才能松开。
购买时唯一要把稳的是它的安装直径,一样平常选择 22mm 即可。

7. 电气元件

  AGV上既有强电也有弱电,例如舵轮的驱动器须要的电流利常很大,而掌握器和一些传感器只须要很小的电流。
我们要合理设计电路,防止它们相互滋扰,更紧张的是包含弱电器件。
根据国家标准GBT 30029-2013 《自动导引车(AGV)设计通则》中第6.7.7.4项的规定,掌握器该当具有过压保护、欠压保护、过流保护功能。

  我们要在电路中加入以下器件:

   \blacksquare 打仗器:用小电流掌握大电流。
上面的电源开关只许可通过较小的电流,但有时设备里有些组件须要大电流才能启动,例如舵轮驱动器。
我们不能用一个开关既掌握小电流也掌握大电流,这时就须要借助打仗器。
打仗器内部有个电磁铁,我们用小电流掌握电磁铁的吸合,电磁铁带动另一组开关闭合使大电流利过。
在AGV上利用的是直流打仗器,把稳打仗器的线圈会发出一定热量,安装应该把稳散热和对附近器件的影响。

断路器:起到过流、欠压保护的浸染。
断路器也相称于一个开关,在短路等电流过大时断开,保护设备;

继电器:也相称于一个开关,它是用小电压掌握触点开闭的,但是把稳触点不能流过太大电流。

  AGV 采取电池作为能源,而电池的电压常日不是很稳定,在利用时电压会颠簸。
虽然西门子的 PLC 对输入电压具有一定的适应能力,但是我们最好用一个24V到 24V 的稳压模块将电池的电压稳定后再供给 PLC。
对付利用24V供电的其它器件,例如磁导航传感器,也是这样。

8. 激光避障传感器

  AGV的安全防护办法有打仗式和非打仗式之分。
触边属于打仗式的,而激光传感器和超声波传感器属于非打仗式。
当然非打仗式的传感器更加安全,由于不须要直接打仗即可监测障碍物。

  常用的国外激光传感器品牌有SICK和HOKUYO。
以SICK的Tim310为例,它的监测间隔可达3米,可以设置不同的监测区域形状。
Tim310的输出是I/O旗子暗记,用以判断是不是监测到了障碍物。

9. 触摸屏

  现在的 AGV 越来越多地开始配备触摸屏了。
利用触摸屏可以方便地设置AGV的参数,例如运动速率、充电电压等等,而不须要每次都将程序下载到 PLC。
既然我们选择了西门子的PLC,当然触摸屏选择西门子是最配对的,但是考虑到西门子的触摸屏有点贵,我们选择国产的品牌。
国产触摸屏的质量也很可靠,而且价格合理,代表厂家有:威纶通、昆仑通态。
由于西门子的有名度,大多数触摸屏都会支持。
但是如果你用其它品牌的PLC,那最好向触摸屏厂家讯问是否支持你的PLC,否则是无法通讯的。

  我选择昆仑通态的触摸屏,它采取24V直流供电,并配有网口,用普通网线将触摸屏和 S1200 连接,并将触摸屏的 IP 地址设置为与 PLC 所在同一网段(例如192.168.0.3)即可实现和 PLC 的互联。
设置 IP 的方法是上电后在进入正式界面之前,在屏幕的任意位置点击一下即可进入设置界面。

  我们如何利用触摸屏呢?我们须要对触摸屏进行编程,或者说“组态”。
编程须要利用昆仑通态自己的组态软件:MCGS,可以在它的官方网站免费下载。

  在你的电脑上安装该软件,把稳在软件中须要输入 PLC 的地址才能读写数据。
触摸屏上只有一个网口,以是你可以用网线将触摸屏连接到你的电脑。
我们把稳到 S1200 有两个网口,以是一种更方便的连接办法是,将触摸屏连接到 S1200 上,然后将 S1200 连接到你的电脑,这样同样能对触摸屏进行编程。
  触摸屏最基本的功能便是读写 PLC 的内存(因此它也是PLC的上位机)。
要实现这个功能非常大略,只须要在 MCGS 中对 PLC 的变量进行关联即可。

10. PLC编程

10.1 编程工具 STEP 7

  购买了S1200 并不虞味着你能免费利用它的开拓软件。
但是没紧要,网上有很多破解软件。
故意思的是,个中有些资源便是西门子公司的人故意开释出来的,他们可能想霸占更多的市场。
要对西门子的 PLC 编程必须利用专用的软件:STEP 7 ,下图是 STEP 7 的安装过程。

  实际上,STEP 7 是过期的名称,现在西门子想将它和其余几个自动化软件都统一成一个平台,适用于西门子旗下所有的设备,这个平台被称为:TIA Portal(博途),本文利用的便是 TIA V13。
西门子公司为了保持延续性,软件的名称有时是 STEP 7,有时又用 TIA,本文我为了与历史统一还叫 STEP 7 好了。
西门子的软件跟硬件一样种类繁多,光 STEP 7 就有几个版本,例如专业版(professional SP1,如下图左所示),而每个版本又有不同的更新包。
把稳 SP1 可能短缺某些功能(下面我会提到),因此我利用了更新包。
详细来说,我利用的是 STEP 7 V13.0 SP1 Upd8,如下图右所示。

  在软件安装时我们把稳到有这样的解释:STEP 7是用于编程的工程组态工具。
要利用 PLC,编程只是一方面,还有一个主要的事情便是“组态”。
“组态”说白了便是“配置”,配置 PLC 的输入输出接口、参数、功能等等。
首先,在“设备组态”页面选择我们的 PLC 型号就可以了。

10.2 西门子PLC的硬件资源要想用好PLC,就要熟习它的一些特点,下面我们就理解一下 S1215C 的特点。
1215C的内存有多大呢?

  我们用电脑连接上PLC,然后在博途软件左侧栏双击“在线和诊断”,然后在打开窗口中点击“存储器”,如下图所示。

  可以看到这里有三个存储器,分别是:装载存储器、事情存储器和保持存储器。
并且可以看到三个存储器的大小,分别是:

  1. 装载存储器: 4194304 41943044194304 Byte ÷1024÷1024=4 \div 1024 \div 1024= 4÷1024÷1024=4MB

  2. 事情存储器: 128000 128000128000 Byte ÷1024=125 \div 1024= 125÷1024=125KB 

  3. 保持存储器: 10240 1024010240 Byte ÷1024=10 \div 1024= 10÷1024=10KB

  这和系统手册中给出的数值是一样的,如下:

  你看完是不是都哭了,10年前的手机存储器都比这要大。
这三个存储器各有什么浸染呢?

  1. 装载存储器:用于存储用户项目文件(例如:用户程序、组态信息),相称于硬盘;

  2. 事情存储器:CPU在实行用户程序时会将一些项目内容从装载存储区复制到事情存储区,相称于电脑的内存;

  3. 保持存储器:掉电后数据仍旧保持。
如果你希望一些数据能在断电后一贯保持就要利用这个存储器。
但遗憾的是,小气的西门子公司只给了我们10KB。

  PLC 扫描一次程序须要多永劫光呢?

  PLC会自动记录韶光,在同一页面,打开“循环韶光”,就能看到PLC完全实行一遍程序须要的韶光,如下图所示。
这个韶光不是固定的,取决于你的程序是非,一样平常的实行韶光在3毫秒以内。

10.3 西门子PLC的软件资源

西门子供应哪些函数运算呢?工业掌握措辞唯一的国际标准——IEC61131-3 规定了46个基本函数,西门子都支持。
除此以外,我们常用的还有定时器等。
AGV 属于移动机器人,而机器人的掌握实质是数学打算,以是我重点说说个中的数学函数,共有18个:

  数字运算:ABS、SQRT、LOG、LN、EXP、SIN、COS、TAN、ASIN、ACOS、ATAN;

  算术运算:ADD、SUB、MUL、DIV、MOD、EXPT、MOVE;

  当然还有:>、< 比较运算符。

  翻开另一款掌握器品牌——倍福的手册,你会创造它同样支持这几个低级函数。

  在组态界面,双击 CPU 模块能看到这款 PLC 的其它功能先容,例如周期定时器,如下图所示。

  如果你利用了触摸屏,有一点值得把稳:在“保护”页面中有一个选项须要勾选:“许可从远程伙伴利用PUT/GET通信访问”,如下图所示。
如果不勾选这个选项,你看你无法用触摸屏读写 PLC 内存中的数据。
让笔者奇怪的是,像这样的细节险些在所有的手册、教程中都找不到,但却又很主要。

10.4 西门子PLC的编程办法

  西门子PLC 的编程符合国际工业编程措辞标准 IEC-611313,因此跟倍福等厂家的差不多。
 

10.4.1 定义常量

  有些量我们要常常利用(例如圆周率 π \piπ),如果每次都用数值来做运算一方面输入很随意马虎出错,另一方面如果想对其进行变动那要改很多处,非常繁琐。
一个方便的做法是将其定义为一个全局的“常数”。
利用 PLC 和 C 措辞等高等措辞相同的一点是,你须要为变量分配内存地址。
分配好地址后如何对其赋值呢?由于常量只须要赋一次值即可,以是我们选择在 Startup 块中对其赋值。
Startup 块在每次 PLC 上电后只实行一次。
西门子中有些块的序号是系统预留的,比如 Startup 便是 OB100。
我们把稳到,在博图软件中,全局变量用双引号表示(例如"PI"),而局部变量前面带个井号(下面会碰到)。

10.4.2 定义函数

  西门子自带的函数只能完成大略的功能,为了实现更高等的掌握我们还要自己写一些函数。
笔者在开拓机器人掌握器的过程中创造,网上公开的PLC函数库很少,目前笔者只知道OSCAT库。
大家都在谈论基本的逻辑掌握,却鲜有人谈论更高等的数学打算,可能 PLC 并不适宜高等运动掌握算法的实现。

  下面我用一个很大略的进行角度弧度转换的函数为例来解释如何在 STEP 7 中自定义函数。

  (1) 首先,我们新建一个函数FC(这个函数比较大略,不须要背景数据,以是不用 FB),实现的措辞选择 SCL 措辞。
函数名为“DegreeToRad”。

  (2) 然后,我们要明确这个函数的输入,在上面的变量定义栏中的 Input 项目中输入 angleInDegree,类型选择为 Real,如下图所示。
在Return 项目中将 DegreeToRad 变量的类型改为 Real,这里把稳不要修正 DegreeToRad 变量的名字。

  (3) 不才面的输入框输入变换公式。
  这里要用 := 对变量进行赋值。
你会把稳到,变量 PI 是用双引号括起来的,而其它的变量(例如 angleInDegree)前面则带一个井号。
这是用来区分局部变量和全局变量的,局部变量用#开头表示,而全局变量用引号表示。

10.4.3 定时器

  定时器是我们会常常利用的一个功能,想输出随韶光变革的量、想延时触发、想输出周期旗子暗记都要借助定时器。
西门子的每个定时器都对应一个背景数据块。
笔者早期常常犯的一个缺点是,为了节省韶光直接复制粘贴定时器块。
其缺点是不管你复制多少次,实在终极还是同一个定时器,而且后面的会覆盖前面的值。
这个缺点导致很多匪夷所思的缺点,让笔者头疼了相称长的韶光。
各位一定要把稳,每利用一个定时器都要重新拖进来新建。

10.4.4 磁循迹算法

  为了让 AGV 始终沿着磁条行走,我们要编写相应的掌握程序,也便是循迹程序。

  循迹程序的逻辑可以非常大略,我们的输入是磁导航传感器的读数,输出则是舵轮转向的速率(或差速轮的转速差),磁条如果在 AGV 车体中央线的左侧,我们就往左偏转,反之在右侧就往右偏转,而如果恰好在中间则保持不动。
下面的仿真动画展示了这种掌握策略的效果,个中只利用了一个传感器和一个舵轮,但已经可以沿着曲线行走了。
磁导航传感器有六个点,安装在前方,赤色的方格表示感应到了磁条,白色表示没有感应到。

引用文献

[1] 一种AGV用磁导航传感器,专利号:CN201710010589.

---------------------

作者:robinvista

来源:CSDN

原文:https://blog.csdn.net/robinvista/article/details/78349627

免责申明:本号所载文章为本"大众年夜众号原创或根据网络搜索编辑整理,文章版权归原作者所有。
因转载浩瀚,无法找到真正来源,如标错来源,或对付文中所利用的图片,资料,下载链接中所包含的软件,资料等,如有侵权,请跟我们联系协商或删除,感激!

往期推举

Teamcenter、TIA Portal、NX MCD是如何结合在一起的

Teamcenter(AWC)一个大略的开拓流程

巧用InTouch 实现多级菜单管理及其核心代码浅析

这才是精确学习工业以太网PROFINET的最佳打开办法

一文带你理解西门子全体虚拟调试与仿真软硬件体系

轻松愉快的理解以太网Ethernet所有知识点

基于WMS/WCS与PLC数据交互的立体仓库掌握系统案例剖析

西家、罗家、施家组态软件连接数据库—Intouch利用SQL数据库发邮件

西门子TIA Portal大鱼吃小鱼VS施耐德Intouch潜水艇小游戏

相关文章

前端框架的发展与未来趋势

随着互联网技术的飞速发展,前端框架作为前端开发的重要工具,已经成为广大开发者必备的技能之一。本文将从前端框架的发展历程、当前主流框...

通讯 2025-01-04 阅读0 评论0