西门子PLC中央处理单元CPU412-1西门子中国一级总代理 西门子PLC代理商
西门子PLC中央处理单元CPU412-1西门子中国一级总代理 西门子PLC代理商
西门子PLC中央处理单元CPU412-1西门子中国一级总代理 西门子PLC代理商
西门子PLC中央处理单元CPU412-1西门子中国一级总代理 西门子PLC代理商
西门子PLC中央处理单元CPU412-1西门子中国一级总代理 西门子PLC代理商
主营西门子原装
S7-200CN|S7-200|S7-1200|S7-300|
S7-400|ET200系列PLC,
西门子T400|TDC高端控制器|
西门子PCS7过程控制系统,西门子HMI,
西门子802C|S|D|810D|840D|828D数控系统及备件,
西门子MM4|G110|G120|V10标准变频器,
西门子S120|611系列伺服系统,
西门子profibus-DP现场总线系统,
西门子电机,西门子过程仪表
凡我公司出售的西门子产品均享受西门子官方质保一年,
一年内有任何质量问题免费提供换新或维修服务,不收取任何费用!
希望我的用心能换来您对我们的信心!
我公司大量现货供应,价格优势,品质保证,德国原装进口
西门子S7-200SMART控制步进电机(四)一、运动控制指令使用准则
运动控制向导配置完成后,可以看到在程序块-向导中看到生成了以“AXISx_”为前缀的运动指令,如图1所示,其中x代表轴通道编号,11条运动指令使用了11个子程序。
图1 运动控制指令
运动控制指令的使用准则如下:
1、必须确保在同一时间仅有一条运动指令激活。
2、可在中断例程中执行AXISx_RUN和AXISx_GOTO。但是,如果运动轴正在处理另一命令时,不要尝试在中断例程中启动指令。如果在中断程序中启动指令,则可使用AXISx_CTRL指令的输出来监视运动轴是否完成移动。
3、运动向导根据所选的度量系统自动组态速度参数(Speed和C_Speed)和位置参数(Pos或C_Pos)的值。对于脉冲,这些参数为DINT值。对于工程单位,这些参数是所选单位类型对应的REAL值。例如:如果选择厘米(cm),则以厘米为单位将位置参数存储为REAL值并以厘米/秒(cm/sec)为单位将速度参数存储为REAL值。
4、有些特定位置控制任务需要以下运动指令:
(1)要在每次扫描时执行指令,请在程序中插入AXISx_CTRL指令并使用SM0.0触点。
(2)要指定运动到juedui位置,必须首先使用AXISx_RSEEK或AXISx_LDPOS指令建立零位置。
(3)要根据程序输入移动到特定位置,请使用AXISx_GOTO指令。
(4)要运行通过位置控制向导组态的运动包络,请使用AXISx_RUN指令。
5、其它位置指令为可选项。
二、运动控制指令介绍
1、AXISx_CTRL指令
功能:启用和初始化运动轴,方法是自动命令运动轴每次CPU更改为RUN模式时加载组态/包络表。
图2 AXISx_CTRL指令
MOD_EN参数必须开启,才能启用其它运动控制子例程向运动轴发送命令。如果MOD_EN参数关闭,运动轴会中止所有正在进行的命令;
Done参数会在运动轴完成任何一个子例程时开启;
Error参数存储该子程序运行时的错误代码;
C_Pos参数表示运动轴的当前位置。根据测量单位,该值是脉冲数(DINT)或工程单位数(REAL);
C_Speed参数提供运动轴的当前速度。如果您针对脉冲组态运动轴的测量系统,C_Speed是一个DINT数值,其中包含脉冲数/每秒。如果您针对工程单位组态测量系统,C_Speed是一个REAL数值,其中包含选择的工程单位数/每秒(REAL)。
C_Dir参数表示电机的当前方向:信号状态0=正向;信号状态1=反向;
注意:在项目中只对每条运动轴使用此子例程一次,并确保程序会在每次扫描时调用此子例程。使用SM0.0(始终开启)作为EN参数的输入。
2、AXISx_DIS指令
功能:运动轴的DIS输出打开或关闭。这允许您将DIS输出用于禁用或启用电机控制器。
图3 AXISx_DIS指令
EN位打开以启用子例程时,DIS_ON参数控制运动轴的DIS输出。
注意:如果在运动轴中使用DIS输出,可以在每次扫描时调用该子例程,或者仅在需要更改DIS输出值时进行调用。若实际DIS连接了电机驱动器的DIS输入,如果不使能则可能导致电机不运转。
3、AXISx_MAN指令
功能:将运动轴置为手动模式。这允许电机按不同的速度运行,或沿正向或负向慢进。
图4 AXISx_MAN指令
RUN参数会命令运动轴加速至指定的速度(Speed参数)和方向(Dir参数)。可以在电机运行时更改Speed参数,但Dir参数必须保持为常数。禁用RUN参数会命令运动轴减速,直至电机停止;
JOG_P(点动正向旋转)或JOG_N(点动反向旋转)参数会命令运动轴正向或反向点动。如果JOG_P或JOG_N参数保持启用的时间短于0.5秒,则运动轴将通过脉冲指示移动JOG_INCREMENT中指定的距离。如果JOG_P或JOG_N参数保持启用的时间为0.5秒或更长,则运动轴将开始加速至指定的JOG_SPEED;
Speed参数决定启用RUN时的速度。如果您针对脉冲组态运动轴的测量系统,则速度为DINT值(脉冲数/每秒)。如果针对工程单位组态运动轴的测量系统,则速度为REAL值(单位数/每秒)。
注意:
同一时间仅能启用RUN、JOG_P或JOG_N输入之一。
在整个程序中,AXISx_MAN指令只可以出现一次,同一个程序中存在多个AXISx_MAN指令时,电机将会按照停止速度(SS_SPEED)旋转且无法改变。
4、AXISx_RSEEK指令
功能:使用组态/包络表中的搜索方法启动参考点搜索操作。当运动轴找到参考点且移动停止时,运动轴将RP_OFFSET参数值载入当前位置。
图5 AXISx_RSEEK指令
RP_OFFSET的默认值为0。可使用运动控制向导、运动控制面板或AXISx_LDOFF(加载偏移量)子例程来更改RP_OFFSET值;
EN位开启会启用此子例程。确保EN位保持开启,直至Done位指示子例程执行已经完成;
START参数开启将向运动轴发出RSEEK命令。对于在START参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个RSEEK命令。为了确保仅发送了一个命令,请使用边沿检测元素用脉冲方式开启START参数。
5、AXISx_GOTO指令
功能:命令运动轴转到所需位置。
图6 AXISx_GOTO指令
START参数开启会向运动轴发出GOTO命令。对于在START参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个GOTO命令。为了确保仅发送了一个GOTO命令,请使用边沿检测元素用脉冲方式开启START参数;
Pos参数包含一个数值,指示要移动的位置(juedui移动)或要移动的距离(相对移动)。根据所选的测量单位,该值是脉冲数(DINT)或工程单位数(REAL);
Speed参数确定该移动的Zui高速度。根据所选的测量单位,该值是脉冲数/每秒(DINT)或工程单位数/每秒(REAL);
Mode参数选择移动的类型:
0:juedui位置
1:相对位置
2:单速连续正向旋转
3:单速连续反向旋转
Abort参数启动会命令运动轴停止当前包络并减速,直至电机停止。
注意:若Mode参数设置为0,则必须首先使用AXISx_RSEEK或AXISx_LDPOS指令建立零位置。
6、AXISx_RUN指令
功能:命令运动轴按照存储在组态/包络表的特定包络执行运动操作。
图7 AXISx_RUN指令
START参数开启将向运动轴发出RUN命令。对于在START参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个RUN命令。为了确保仅发送了一个命令,请使用边沿检测元素用脉冲方式开启START参数;
Profile参数包含运动包络的编号或符号名称。“Profile”输入必须介于0-31。否则子例程将返回错误;
Abort参数会命令运动轴停止当前包络并减速,直至电机停止;
C_Profile参数包含运动轴当前执行的包络;
C_Step参数包含目前正在执行的包络步。
7、AXISx_LDOFF指令
功能:建立一个与参考点处于不同位置的新的零位置。
图8 AXISx_LDOFF指令
开启START参数将向运动轴发出LDOFF命令。对于在START参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个LDOFF命令。为了确保仅发送了一个命令,请使用边沿检测元素用脉冲方式开启START参数。
注意:
在执行该子例程之前,必须首先确定参考点的位置,还必须将机器移至起始位置。当子例程发送LDOFF命令时,运动轴计算起始位置(当前位置)与参考点位置之间的偏移量。运动轴然后将算出的偏移量存储到RP_OFFSET参数并将当前位置设为0。这将起始位置建立为零位置。
如果电机失去对位置的追踪(例如断电或手动更换电机的位置),可以使用AXISx_RSEEK子例程自动重新建立零位置。
8、AXISx_LDPOS指令
功能:将运动轴中的当前位置值更改为新值。您还可以使用本子例程为任何juedui移动命令建立一个新的零位置。
图9 AXISx_LDPOS指令
START参数开启将向运动轴发出LDPOS命令。对于在START参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个LDPOS命令。为了确保仅发送了一个命令,请使用边沿检测元素用脉冲方式开启START参数;
New_Pos参数提供新值,用于取代运动轴报告和用于juedui移动的当前位置值。根据测量单位,该值是脉冲数(DINT)或工程单位数(REAL)
9、AXISx_SRATE指令
AXISx_SRATE子例程(设置速率)命令运动轴更改加速、减速和急停时间。
图10 AXISx_SRATE指令
开启START参数会将新时间值复制到组态/曲线表中,并向运动轴发出一个SRATE命令。对于在START参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个SRATE命令。为了确保仅发送了一个命令,请使用边沿检测元素用脉冲方式开启START参数。
ACCEL_Time、DECEL_Time和JERK_Time参数用于确定新的加速时间、减速时间以及急停时间,单位为毫秒(ms)。
当运动轴完成此子例程时,Done参数会开启
10、AXISx_CFG指令
AXISx_CFG子例程(重新加载组态)命令运动轴从组态/曲线表指针指定的位置读取组态块。运动轴然后将新组态与现有组态进行比较,并执行任何所需的设置更改或重新计算。
图11 AXISx_CFG指令
开启START参数将向运动轴发出CFG命令。对于在START参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个CFG命令。为了确保仅发送了一个命令,请使用边沿检测元素用脉冲方式开启START参数。
当运动轴完成此子例程时,Done参数会开启。
11、AXISx_CACHE指令
AXISx_CACHE子例程(缓冲曲线)命令运动曲线在执行前先缓冲。
这可在执行前预先缓冲所需命令。预先缓冲可缩短从执行运动指令到开始运动的时间,并可带来一致性.
图12 AXISx_CACHE指令
开启START参数将向运动轴发出CACHE命令。对于在START参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个CACHE命令。为了确保仅发送了一个命令,请使用边沿检测元素用脉冲方式开启START参数。
Profile参数包含运动曲线的编号或符号名称。“Profile”输入必须介于0-31。否则子例程将返回错误。
当运动轴完成此子例程时,Done参数会开启。
————————————————
版权声明:本文为CSDN博主「」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net//article/details/119985142
生产过程中有大量连续变化的模拟量需要用PLC来测量或控制。有的是非电量(如温度、压力、流量、液位、物体的成分和频率等);有的是强电电量(如发电机和电动机组的电流、电压、有功功率和无功功率、功率因数等)。变送器用于将传感器提供的电量或非电量信号转换为标准的直流电流或直流电压信号,如直流0~10 V或直流4~20 mA信号。
西门子S7-300/400的CPU用16位二进制补码定点数来表示模拟量值。A/D转换的结果是按16位二进制补码形式存储,即占用1个字(两个字节)的长度。其中,Zui高位(第15位)为符号位,正数的符号位为0,负数的符号位为1。
模拟量模块的模拟值位数(即转换精度)可以设置为9~15位(与模块的型号有关,不包括符号位),如果模拟量值的精度小于15位,则模拟量值左移,使其Zui高位(符号位)在16位字的Zui高位(第15位),模拟量值左移后未使用的低位则填入“0”,这种处理方法称为“左对齐”。设模拟量值的精度为12位,加上符号位,未使用的低位(第0~2位)为0,相当于实际的模拟值被乘以8。
三种转换精度的数据存储格式见表1。S位为符号位,标有“×”的位被补为0。
表1 A/D转换结果存储格式示例
Classic模拟量模块 | 6ES7231-0HF22-0XA0 | SIMATIC S7-200, EM231 模拟量输入模块,8输入 |
6ES7232-0HD22-0XA0 | SIMATIC S7-200, EM232 模拟量输出模块,4输出 | |
运动控制模块 | 6ES7253-1AA22-0XA0 | SIMATIC S7-200, EM253 定位模块 |
CN 数字量模块 | 6ES7221-1BF22-0XA8 | S7-200CN, EM221 数字量输入模块, 8输入24V DC |
6ES7221-1BH22-0XA8 | S7-200CN, EM221 数字量输入模块, 16输入24V DC | |
6ES7222-1BF22-0XA8 | S7-200CN, EM222 数字量输出模块,8输出24V DC | |
6ES7222-1HF22-0XA8 | S7-200CN, EM222 数字量输出模块,8输出继电器 | |
6ES7223-1BF22-0XA8 | S7-200CN, EM223 数字量输入/输出模块,4输入 24V DC/4输出 24V DC | |
6ES7223-1BH22-0XA8 | S7-200CN, EM223 数字量输入/输出模块,8输入 24V DC/8输出 24V DC | |
6ES7223-1BL22-0XA8 | S7-200CN, EM223 数字量输入/输出模块,16输入 24V DC/16输出 24V DC | |
6ES7223-1BM22-0XA8 | S7-200CN, EM223 数字量输入/输出模块,32输入 24V DC/32输出 24V DC | |
6ES7223-1HF22-0XA8 | S7-200CN, EM223 数字量输入/输出模块,4输入 24V DC/4输出继电器 | |
6ES7223-1PH22-0XA8 | S7-200CN, EM223 数字量输入/输出模块,8输入 24V DC/8输出继电器 | |
6ES7223-1PL22-0XA8 | S7-200CN, EM223 数字量输入/输出模块,16输入 24V DC/16输出继电器 | |
6ES7223-1PM22-0XA8 | S7-200CN, EM223 数字量输入/输出模块,32输入 24V DC/32输出继电器 | |
CN模拟量模块 | 6ES7231-0HC22-0XA8 | S7-200CN, EM231 模拟量输入模块,4输入 |
6ES7232-0HB22-0XA8 | S7-200CN, EM232 模拟量输出模块,2输出 | |
6ES7235-0KD22-0XA8 | S7-200CN, EM235 模拟量输入输出模块,4输入/1输出 |