Compax3T40用三种开关方式控制LED灯的闪烁.doc

Compax3T40用三种开关方式控制LED灯的闪烁.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Compax3T40用三种开关方式控制LED灯的闪烁

一、功能 接通电源后,led灯处于熄灭状态 合上开关,led灯被点亮,并开始以一定的频率闪烁(这里设灯亮1s,暗2s,周期为3s)。 断开开关,led灯熄灭。 这里的开关可以分别是C3MGR2自带的软件模拟开关,实际的硬件开关,通过串口通信传递的命令控制开关。 二、原理 开关(硬件开关或软件开关)闭合时,向数字I/O口X12的第6脚I0输入一高电平,作为开关信号,compax3开始执行相关程序,使X12/2,即O0口输出周期为3s的方波信号(高电平为22.35v,低电平为0v),从而使led灯闪烁。 通过串口通信的方式将object 1903.1,即C3Array.Col03_Row01置为1,作为启动程序的开关信号,从而实现led灯的闪烁。 三、硬件 元器件 Compax3, 10v电源,电路板,led灯,电阻,导线若干 原理图如图1所示 图1 需要说明的问题: X12/11必须和X12/1相连,enable四个输出口。 输入引脚上的电压大于9.15v时为高电平,否则为低电平。 四、软件 周期为3s的脉冲信号是用PLC程序来实现。 主程序是用SFC来架构,各个子程序是用FBD来实现的,具体如下: SFC主程序,如图2 图2 初始化程序,如图3 图3 点灯程序,如图4 图4 熄灯程序,如图5 图5 五、串口通信 1. Object Compax3的每一种状态和对其进行操作的每一个参数都有其对应Object,例如实现绝对位移的操作是函数是MC_MoveAbsolute,对应的一个参数是position,它就有其对应的object,C3Plus.POSITION_position,编号是1111.1。其具体信息如下图所示: 从这个表里,我们可以得到关于这个object的所有信息。对于我们现在使用的这种型号的驱动器(C3S063V2F10 I11 T40 M00),主要关心如下信息: 1)功能:在Remark里面有详细说明。 2)存取方式(Access):这里既可读也可以写。 3)有效周期:对于有的object来说,对其值做的变化并不能立即被compax3识别。这可以从valid after 来判断。可以立即识别的就是immediately,否则就是VP。对于后者,如果我们要想所设置的变量有效的话,还必须向object 210.10(C3.ValidParameter_Global)写入一个不为0(TRUE)的值。另外,对这些object所做的改变只是临时的,在compax3断电后就会消失;要想永久地让这种改变起作用,必须在对这个object进行操作后,紧接着向object 20.11(C3.ObjectDir_WriteObjects)写入不为0的值(TRUE)。 4)是否为codesys中的object,及其数据类型(codesys format)。 5)取值范围,minimum/maximum value。 2. 串口通信格式 利用串口通信对compax3进行操作主要是通过对object进行读写来实现的。 Parker公司提供了两种通信格式:ASCII码格式和二进制码格式。前者实现起来比较容易,后者操作复杂,但速度快、安全性好。这里只对前者作简要介绍,后者可参看手册上相关内容。 ASCII码格式如下:地址符+命令符+回车(CR)。 地址符:RS232通信没有地址码;RS485的地址码从0到99,可以在C3 ServoManager下的RS485 settings中进行配置。 命令符:命令符是由从0X21到0X7E的这些可被表示的ASCII码组成,小写字母和空格如果不在双引号里的话,前者将被改写成大写字母,后者被删除。对于在小数前后的连接符都当作小数点来看待。如果在数字前加上“$”,该数字就为16进制的;如果在回车前加“$”,返回的数字信息也是16进制的。 向compax写入命令后,它会有一个Answer strings作为回应。 读命令:读数字的话,直接返回对应的数字,长度不定;读字符信息(e.g.软件版本号),就返回该信息,长度一定。 写命令:成功,就返回符号“”;否则,就返回字符“!XXXX”,XXXX是一个4位的16进制数字,其含义可以从手册上查到。 命令格式: 1)读object:RS232: O [$] Index, [$] Subindex [$] RS485: Address O [$] Index, [$] Subindex [$] 例如用RS232从Object 402.2读出信息,可表示为O $0192,2$ 或 O 402,2 2)写object: RS232: O [$] Index, [$] Subindex = [$] Value [; Value2; Value3; ...] RS485:

文档评论(0)

qwd513620855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档