有二种方法可以实现:
1、加模拟量输入模块,配合编程可以实现:以S7-200为例,选用EM235模块,其输入量设为0~10V,对应数字量为0~32000,如输入为0~3V,对应数字量为0~9600,如输入为4~6V,对应数字量为12800~19200,如输入为7~10V,对应数字量为22400~32000。为避免输入量有死区(如3~4V与6~7V之间)应该为这样规定:<4V为电机正转,>7V为电机反转。4V ≤ 输入电压 ≤ 7V时,电机停。这样就可以这样编程:
Network 1 // 网络标题
// 电机正转
LDW< AIW0, 12800
S Q0.0, 1
Network 2
// 电机反转
LDW> AIW0, 22400
S Q0.1, 1
Network 3
// 电机停转
LDW<= AIW0, 12800
AW>= AIW0, 22400
R Q0.0, 2
2、用硬件做比较电路:<4V使输入口I0.0=1(即电机正传启动),>7V时 I0.1=1(即电机反传启动),≥ 4V 且 ≤7V时 I0.0与 I0.1皆=0,即电机停车。见下图:
U1A的3脚电压调整为4V,输入电压<4V时 I0.0=1、I0.1=0,电机正传。当输入电压≥4V且≤7V 时,I0.0=0、I0.1=0,即电机停。当输入电压>4V时 I0.0=0、I0.1=1,电机反传。
这二个方案比较第二个简单费用低,仅需几元钱。