如果说车载控制器是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:CommunicationModule)。上面提到的几种协议西门子都有对应的通信模块支持,比如西门子的 232 、485 和 CANopen通信模块如下图所示(这三种模块外形完全一样),注意 232 和 CANopen模块的插头是公头,而485的则是母头。 对于移动设备来说,CAN总线是Zui常用的通讯方式,像汽车、挖掘机、AGV一般都采用CAN总线通讯。CAN总线的速度快(Zui高可达1Mb/s,比485要快)、稳定性高(采用差分信号,抗干扰),更“智能”(有优先级和仲裁机制),应该优先选择CAN 总线。考虑到西门子本身没有CAN通信模块(如果想使用CAN,要购买第三方公司HMS提供的CANopen模块),本文使用的驱动器采用 485协议,我们选择485模块。
随之而来的一个问题是:S1200能外扩几个通信模块?答案是:3个。不管是哪种通信模块,数量Zui多只能是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的对应顺序焊接,如下图所示。 (三)移动机构
AGV要想实现搬运、移载就要有移动机构,通常采用的移动机构有舵轮、差速轮和麦克纳姆轮。它们各自有什么特点呢?什么场合又该使用哪种轮子呢?
麦克纳姆轮的优点是运动精度高,结构复杂,磨损严重,对地面挑剔,麦克纳姆轮问世超过30年了,实际应用并不多,这也说明它不是一个实用的产品。下面我们主要讲解舵轮。
舵轮是个高度集成的移动机构,由车轮、回转支撑、齿轮箱、驱动电机、转向电机、编码器、限位开关、制动器等部件组成,它既能提供牵引力,也可以主动转向,一个舵轮有两个自由度。AGV使用一个或以上的舵轮就可以实现全向移动:原地旋转、斜行、横移等等。舵轮一般用于室内环境,轮面的材料多为聚氨酯。根据电机的安装位置可以将舵轮分为两种:卧式和立式,分别如下两图所示。卧式舵轮的驱动电机横向安装,整体高度很低,有些AGV对高度有要求(例如潜入式的AGV要很矮才能钻到货物底下),这时就适合使用卧式舵轮;立式舵轮的驱动电机竖着安装,其整体高度偏高,它的优点是方便将电机隔离起来,在有些场合(例如危险品工厂),要求舵轮电机与外部环境隔离,这时就适合使用立式舵轮。国外主要的舵轮生产厂家有:意大利的CFR 和德国的schabmuller(夏伯穆勒),后来从CFR中又独立出来了一个厂家——马路达。这些舵轮生产厂家一般只卖舵轮,不提供驱动器,驱动器则由代理商提供。一台AGV上Zui贵的部件就是舵轮,以一台成本10万元左右的AGV为例,如果配备两个舵轮,就需要4~5万元,占整车成本将近一半。好消息是,国内的舵轮厂家开始参与竞争,这将降低AGV的成本。 (四)磁导航传感器和磁条
4.1 磁条磁条导航是目前 AGV 使用Zui多的导航方式之一。只需要预先在地面铺设好磁条,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 型,它们的接法是一样的。