双击项目树下的块设置,RS485端口地址设置为2,波特率设置为9.6kbps。
RS485端口设置 图11增计数器的图形符号及文字标识含义当装载输入端LD为1时,其计数器的设定值PV被装入计数器的当前值寄存器,此时当前值为PV。只有装载输入端LD为0时,计数器才可以工作。例如,某段PLC梯形图程序中计数器类型为CTD,减计数器,编号为C1,预设值PV为3,如图12所示。 指令格式如下:(3)双字传送指令MOVD:双字传送指令。指令格式如下:(4)实数传送指令MOVR:实数传送指令。指令格式如下:2)块传送指令块传送指令用来一次传送多个数据,多可将255个数据组成一个数据块,数据块的类型可以是字节块、字块和双字块。
编写初始化程序,从指令树中选择一个常开触点拖放到编程区域程序段1中,输入地址0.1,拖动指令树库下的USS协议中的USS_INIT指令到0.1后,输入参数为1,波特率为9600,端口0,变频器地址为3,格式为二进制1000,或者直接输入8,完成位为M0.0,错误为MB1。
初始化
下面编写控制变频器程序,拖动USS_CTRL指令到程序段2中,使能输入端0.0常开触点,运行端I0.0,OFF2为I0.1,OFF3为I0.2,故障确认端I0.3,方向I0.4,驱动器地址为3,类型为1,给定速度输入50.0表示额定速度的50%。输出参数中响应为M20.0,错误MB21,状态MW8,到的速度MD12,运行使能M16.0,方向M16.1,禁止M16.2,故障M16.3。
控制变频器
接着编写读取参数程序,我们读取斜坡上升时间P1120参数为实数类型,拖动USS_RPM_R指令到程序段3,使能端输入常开触点I1.0,读取请求XMT参数输入一秒钟时钟脉冲的上升沿,驱动地址为3,参数输入1120,索引0,脉冲区输入VB1000,输出参数中完成位为M30.0,错误为MB31,读取参数值存放到MD24。
读取变频器参数
编写写参数程序,我们写斜坡上升时间P1120,拖动USS_WPM_R指令到程序段4,使能端输入常开触点I1.1,读取请求XMT参数输入一秒钟时钟脉冲常闭触点的上升沿。EEPROM参数为常0,驱动器地址为3,参数输入1120,索引0,参数修改值输入地址VD3000,缓冲区输入VB2000,完成M30.1,错误MB28,这样程序就编写完成了。 然后将弹出来的其他的小窗口都关掉,只保留梯形图这个小窗口,然后菜单栏PLC运行。这时我们看到运行后,PLC没什么变化,然后图3的两个红色小方框I0.0和I0.5使它们在闭合状态,这时我们就会发现Q0.1指示灯已经亮起,说明Q0.1已经有了输出。 2、通讯格式设置:大家都知道西门子的有点不一样,西门子是低字高位,大多数都是采用的高字高位,如果只是传输字节的话,两者是没有区别的,如果用modbus传输32位的数据就需要注意这个问题了,因为modbus只是原封不动的把药传输的32位。
写变频器参数
使用USS库指令需要为其分配存储区,右键单击项目树程序块下的库,选择库存储器,在打开的库存储器分配对话框中,单击建议地址按钮,采用默认地址即可。
本篇我们学习了西门子S7-200 ART USS通信,如何编写与变频器通信的程序,以后的文章中我们将继续学习西门子S7-200 ART的相关知识,欢迎大家关注!送大家两套编程作为新年小礼物,可私信发送关键字“礼物”获取下载链接,需要学习西门子S7-200 的朋友发送“200”到本号即可获取一套S7-200视频教程。 我们现在在向大型锅炉控制上转型,大型锅炉都是一炉一机的,针对我们的现在的要求不太,我们的特点是需要交换的数据量小多两三百点,但是要求速度快。是用pc然后pc和plc通讯,pc中用wincc把读取到的数据转写到plc的变量中,wincc中如果脚本执行的速度过快,则影响到wincc的其他的功能,所以目前快也就是1s的周期。
PLC输出的集成脉冲可通过步进电机进行定位控制。关于定位控制,调节和控制操作之间存在一些区别。步进电机不需要连续的位置控制,而在控制操作中应用。在以下的程序例子中,借助于CPU214所产生的集成脉冲输出,通过步进电机来实现相对的位置控制。虽然这种类型的定位控制不需要参考点,本例还是粗略地描述了确定参考点的简单步骤。因为实际上它总是相对一根轴确定一个固定的参考点,因此,用户借助于一个输入字节的对偶码(Dual coding)给CPU定位角度。用户程序根据该码计算出所需的定位步数,再由CPU输出相关个数的控制脉冲。
2结构
如图1所示。
图1 结构
3硬件配置
如表1所示。
4结构
4.1 PLC的输入与输出
PLC的部分输入与输出,以及标志位如表2所示。
4.2 设计
PLC的程序框图如图2所示。
4.3 初始化
在程序的个扫描周期(0.1=1),初始化重要参数。选择方向和解除联锁。
4.4 设置和取消参考点
如果还没有确定参考点,那么参考点曲线应从按“START”按扭(I1.0)开始。CPU有可能输数量的控制脉冲。在所需的参考点,按“设置/取消参考点”开关(I1.4)后,调用停止电机的子程序。然后,将参考点标志位M0.3置成1,再把新的操作“定位控制”显示在输出端Q1.0。
如果I1.4的开关已,而且“定位控制”也被(M0.3=1),则切换到“参考点曲线”参考点曲线。在子程序1中,将M0.3置成0,并取消“定位控制”的显示(Q1.0=0)。此外,控制还为输数量的控制脉冲做。当再次I1.4开关,便在两个之间切换。如果此产生,同时电机在运转,那么电机就自动停止。
实际上,一个与驱动器连接的参考点开关将代替手动操作切换开关的使用,所以,参考点标志能解决切换。
4.5 定位控制
如果确定了一个参考点(M0.3=1)而且没有联锁,那么就执行相对的定位控制。在子程序2中,控制器从输入字节IBO读出对偶码的定位角度后,再存入字节MB11。与此角度有关的脉冲数,根据下面的公式计算:
N=φ/360°×S
式中:N-控制脉冲数
φ-角度
S-每转所需的步数
该程序所使用的步进电机采用半步操作(S=1000)。在子程序3中循环计算步数,如果现在按“START”按钮(I1.0),CPU将从输出端Q0.0输出所计算的控制脉冲个数,而且电机将根据相应的步数来转动,并在内部将“电机转动”的标志位M0.1置成1。
在完整的脉冲输出之后,执行中断程序0,此程序将M0.1置成0,以便能够再次起动电机。
4.6 停止电机
按“STOP”(停止)按扭(I1.1),可在任何时候停止电机。执行子程序0中与此有关的指令。
5程序和注释
//标题:用脉冲输出进行定位控制
//主程序
LD 0.1
//仅扫描周期0.1才为1。
RM0.0,128
//MD0至MD12复位
ATCH 0,19
//把中断程序0分配给中断事件19(脉冲串终止)
//允许中断
//脉冲输出功能的初始化
MOVW 500,W68
//脉冲周期T=500us
MOVW 0,W70
//脉冲宽度为0(脉冲调制)
MOVD 429496700,D72
//为参考点设定脉冲数
//设置逆时针
LDN M0.1 //若电机停止
AI1.5 //且方向开关=1
SQ0.2,1 //则逆时针(Q0.2=1)
//设置顺时针
LDN M0.1 //若电机停止
AN I1.5 //且方向开关=0
RQ0.2,1 //则逆时针(Q0.2=0)
//联锁
LD I1.1
//若按“STOP”(停止)按钮
0.2,1 //则联锁(M0.2=1)
//解除联锁
LDN I1.1
//若“START”(启动)按钮松开
AN I1.0
//且“STOP”(停止)按钮松开
RM0.2,1 //则解除联锁(M0.2=0)
//确定操作(参考点定位控制)
LD I1.4
//若按“设置/取消参考点”按钮
EU //上升沿
CALL 1 //则调用子程序1
//启动电机
LD I1.0
//若按“START”(启动)按钮
EU //上升沿
AN M0.1 //且电机停止
AN M0.2 //且无联锁
AD≥ D72,1
//且步数≥1,则
MOVB 16#85,B67
//置脉冲输出功能(PTO)的控制位
PLS 0 //启动脉冲输出(Q0.0)
0.1,1
//“电机运行”标志位置位(M0.1=1)
//定位控制
LD M0.3
//若已“定位控制” 操作
AN M0.1 //且电机停止
CALL 2 //则调用子程序2
//停止电机
LD I1.1
//若按“STOP”(停止)按钮
EU //上升沿
AM0.1 //且电机运行,则
CALL 0 //则调用子程序0
MEND //主程序结束
//子程序1
R 0 //子程序0停止电机
MOVB 16#CB,B67
//脉宽调制
PLS 0 //停止输出脉冲到Q0.0
RM0.1,1
//“电机运行”标志位复位(M0.1=0)
RET //子程序0结束
R1
//子程序1,“确定操作”
LD M0.1 //若电机运行
CALL 0
//则调用子程序0,停止电机
//申请“参考点曲线”
LD M0.3
//若已“定位控制”,则
RM0.3,1
//参考点标志位;复位(M0.3=0)
RQ1.0,1
//取消“定位控制”信息(Q1.0=0)
MOVD 429496700,D72
//为新的“参考点曲线”设的脉冲数。
CRET
//条件返回到主程序。
//申请“定位控制”
LDN M0.3
//若未设置参考点(M0.3=0),则
0.3,1
//参考点标志位置位(M0.3=1)
SQ1.0,1
//输出“定位控制”信息(Q1.0=1)
RET //子程序1结束
//子程序2
R2 //子程序2,“定位控制”
MOVB IB0,MB11
//把定位角度从IBO拷到MD8有效字节MB11。
RM8.0,24
//MB8至MB10清零
DIV 9,MD8
//角度/9=q1+r1
MOVW MW8,MW14
//把r1存入MD12
MUL 25,MD8
//q1×25→MD8
MUL 25,MD12
DIV 9,MD12
// r1×25/9= q2+r2
CALL 3
//在子程序3中循环步数
MOVW 0,MW12 //r2
+D MD12,MD8
//把步数写入MD8
MOVD MD8,D72
//把步数传到D72
RET //子程序2结束
//子程序3
R3 //子程序3,“循环步数”
LDW≥MW12,5 //如果r2≥5/9,则
INCW MW14 //步数1。
//子程序3结束
//中断程序0,“脉冲输出终止”
INT0 //中断程序0
RM0.1,1
//“电机运行”标志位复位(M0.1=0)
RET //子程序0结束
6结束语
通过对硬件和的合理设计,用较为的西门子S7-200系列PLC作为核心控制部件,构成的定位能够达到定位的目的。特别应指出的是通过灵活、巧妙的应用PLC的指令,可使实现定位。
辽宁西门子2芯DP电缆辽宁 FLASH卡存储器类型Flash-EPROM,可以掉电保持程序。如果要维持保持性存储的位存储器、定时器、计数器、数据以及变量数据块中的数据,也需要配置后备电池。S7-400cpu存储卡的大小及订货号RAM卡的扩展范围为256KB至64MB。 报文设定端口号,选择Hex数据格式,开始,络中所有报文,根据modbus协议的规格(可以自行),可以判断这些报文就是plc发出的读命令。下面进行写数据的验证,在程序中将DeviceData[2].ctrl任意赋值,然后再modsim中查看:写入成功可以看到modsim3中相应。
6ES7212-1AB23-0XB8
6ES7212-1BB23-0XB8
6ES7214-1AD23-0XB8
6ES7214-1BD23-0XB8
6ES7214-2AD23-0XB8
6ES7214-2AS23-0XB8
6ES7214-2BD23-0XB8
6ES7216-2AD23-0XB8
6ES7216-2BD23-0XB8
6ES7221-1BF22-0XA8
6ES7221-1BH22-0XA8
6ES7222-1BF22-0XA8
6ES7222-1HF22-0XA8
6ES7223-1BF22-0XA8
6ES7223-1HF22-0XA8
6ES7223-1BH22-0XA8
6ES7223-1PH22-0XA8
6ES7223-1BL22-0XA8
6ES7223-1PL22-0XA8
6ES7223-1BM22-0XA8
6ES7223-1PM22-0XA8
6ES7231-0HC22-0XA8
6ES7231-7PB22-0XA8
6ES7231-7PD22-0XA8
6ES7232-0HB22-0XA8
6ES7235-0KD22-0XA8
6ES7231-0HF22-0XA0
6ES7231-7PC22-0XA0
6ES7231-7PF22-0XA0
6ES7232-0HD22-0XA0
6ES7235-0KD22-0XA0
6ES7241-1AA22-0XA0
6ES7253-1AA22-0XA0
6ES7277-0AA22-0XA0
6GK7243-1EX01-0XE0
6ES7290-6AA20-0XA0
6ES7291-8BA20-0XA0
6ES7901-3CB30-0XA0
6ES7901-3DB30-0XA0
6ES7901-0BF00-0AA0
6NH9720-3AA00
6NH9860-1AA00
6ES7272-0AA30-0YA1
上海地友自动化设备有限公司提供辽宁西门子2芯DP电缆,包括西门子2芯DP电缆的详细产品价格、产品图片等产品介绍信息。
上海地友自动化设备有限 7年
——— 认证资质 ———