触摸屏与伺服驱动器APCM模式编程总结

触摸屏与伺服驱动器APCM模式编程总结
触摸屏与伺服驱动器APCM模式编程总结

伺服驱动器APCM模式编程总结

经过一个多月的努力,终于将触摸屏控制伺服驱动器工作于APCM模式的程序做好了。这段时间,在赵老师的指导下,我不断查找资料、上机实验、询问客服等方法,终于将触摸屏控制伺服驱动器工作于APCM模式的不同控制方式下的几个程序做了出来。在这个过程中,我收获了很多的知识,不仅是关于触摸屏与伺服电机的专业知识,更多的是在程序设计中怎样与实践结合,怎样从使用方便的角度去设计程序。我编写的程序包括APCM模式的单次定位方式程序、APCM模式的连续定位方式、APCM模式的连续速度模式和两轴联动的APCM单次绝对位置定位模式,以及内部速度通信调速模式。在这里,我将各个程序的编写方法及宏指令总结如下。

首先说明编写程序及调试所用的主要设备:两台珠海运控PSDA0633A6伺服驱动器及两台BPA6系列60型C60-30伺服电机、一台威纶通MT6070iH触摸屏。

一、APCM模式的连续定位方式

使用APCM模式,需先将51号参数设为5,然后断电再上电,该模式才会有效。伺服驱动器工作在APCM模式的单次定位方式,需在单次定位控制方式页面打开时,设定65号参数为11850(APCM控制字为10111110001010)。屏幕上需设定速度参数设定、伺服ON、伺服OFF、启动、停止、故障处理等6个主要控制键,分别用于切换到速度设定窗口、打开伺服、关闭伺服、启动电机、停止电机和故障处理等。在屏幕上还要设置一个趋势图元件,来形象显示电机的实时速度,同时趋势图元件还可以查看过去某个时刻的速度、观察速度曲线等功能。我在该定位方式的控制控制页面上还添加了伺服准备好、伺服ON、正转、反转、驱动器报警等运行状态显示元件来实时显示伺服驱动器的运行状态。为了根据需要实现电机的正反转,还用到了两个置位开关,位地址都为0x52,但是在这里我将这两个置位开关做成透明的,然后在上面添加两个位地址也为0x52的位状态指示灯,这样在点击正转或反转的按键后,相应的位状态指示灯就会亮,表明正转(反转)设定有效。同时在控制页面上还添加了一个保存参数的按键,用来将设定的参数保存在伺服驱动器里。控制页面上所用的元件的地址都是根据伺服驱动器手册里的Modbus协议分配的地址来设定的。

在做这个连续定位方式的程序过程中,曾经遇到两个问题:第一个问题是,在设定好电机的加减速时间后(运行速度设定为600转),电机从0转开始启动,加速到600转,然后按停止键,电机瞬时停止,可以在趋势图上观察到启动的时候速度曲线是斜线,停止的时候速度曲线是一条竖直线,这说明启动的时候电机按设定的加减速时间启动了,但是停止的时候没按设定的加减速时间停止。如果将电机从0转加速到3000转,可以在趋势图上观察到电机按设定的加减速时间启动了,按下停止键,电机会瞬时停止转动,同时会发生很大的噪声,这时在趋势图上观察到停止的时候速度曲线是一条竖直线。反复分析了这种情况,最后找到了出现这种情况的原因是在电机停止的宏指令里,没有在减速指令后加上一条延时指令来给电机时间减速,而是直接执行停止指令,这样电机刚接收到减速指令,马上就又接收到停止指令,电机来不及减速,转速直接从3000转跌到0转,这样就产生了很大的震动和噪声。后来我在电机停止的宏指令里添加了电机从设定的运行速度减速到启动速度的延时时间,这个问题才得以解决。第二个问题是,我在调试的过程中,发现加减速时间的设定值超过8100mm时,不论设定的加减速时间是多少,电机都在两秒钟左右的时间内加速到运行速度。特别是把加减速

时间设定为8200mm时,按启动键,电机不启动,同时还会发出转速瞬时下降时的那种噪声。起初我以为是个别驱动器的问题,但是换了个驱动器之后发现问题依然存在。这个情况要等问过他们厂家的在线客服之后才明白是怎么回事。

二、APCM模式的连续速度方式

APCM模式的连续速度方式程序的编写基本上与APCM模式的连续定位方式一样,但是在控制页面打开的时候要把65号参数设定为3635(APCM控制字为0000111001001000)。控制页面上同样需要设定速度参数设定、伺服ON、伺服OFF、启动、停止、故障处理等6个主要控制按键。在该控制页面上也需要添加上正反转按键、趋势图、状态显示指示灯、保存参数等元件。需要指出的一点是,这两种控制方式如果用于调速的话,不是很方便,因为速度参数的设定位置只有一个地址,且在电机的运行过程中,设定电机向相反方向运转,该指令不会马上执行,必需在电机停止后再启动,驱动器才会执行反转指令。

三、APCM模式的单次定位方式

APCM模式的单次定位方式适合于进行精确的位置控制。伺服驱动器工作在APCM模式的单次定位方式,需在单次定位控制方式页面打开时,设定65号参数为12170(APCM控制字为0010111110001010)。单次定位方式的控制按键跟连续定位方式的控制按键相似,也要设定速度参数设定、伺服ON、伺服OFF、启动、停止、故障处理、保存参数等按键和位状态显示指示灯,不同的是这这段程序中,我选择的是绝对位置控制,这样,如果输入的脉冲总数是正值,则电机正转,输入脉冲式负值,则电机反转,同时还可以进行原点校正、回归原点、点动控制等功能(点动控制只在该控制方式里有效,在连续控制方式里无效)。在单次定位方式里,可以准确设定电机运行的脉冲数目,这样电机就能够准确的运行一段距离。该方式适合于用通信方式进行精确的距离控制。

四、内部速度调速

使用内部速度调速模式,需先将51号参数设为0,然后断电再上电,该模式才会有效。内部速度模式控制页面的参数设置也跟上面几种模式一样,需要设定速度参数按键、伺服ON、伺服OFF、停止、故障处理、正转、反转、保存参数、趋势图以及状态显示等元件。与上面的模式不同的是,内部速度模式可以设定八级速度,而且可以在这八及速度中任意切换,点正转(反转)按键后,电机会马上按设定的加减速时间减速然后反转(正转)。这种模式比APCM模式更适合用于调速。

五、两轴联动的APCM单次绝对位置定位模式

这个程序可以同时控制两个电机带动一个工作台分别向X、Y方向移动。在这个程序的控制页面上,除了上面所叙述的参数设定、伺服ON、伺服OFF、启动、停止和故障处理等参数外,还需要设定一个坐标系。坐标系里,X轴和Y轴的最大值都是5mm,坐标系的四个方向设定四个上下左右的箭头,点一下箭头,电机就向相应的方向运行0.01mm(1丝),同时可以在坐标系里用鼠标进行目标位置的选取,也可以在专门的数值输入框里输入目标坐标。设定好目标坐标后,会有两条黄色的水平和数值的虚线相交叉,交叉点即为选取的目标点。在该控制页面上,我还进行了电机速度的实时显示、电机已运行距离的实时显示,目标位置的设定和目标位置的径向距离和电机当前位置相对于原点的径向距离的显示。点击电机速度显示框、电机已运行距离显示框或目标位置设定方框时都有一个相对应的放大的窗口弹出来,这样可以更加清晰地观察和设定参数。

在这个程序里,可以进行配方数据的上传和下载。

在坐标系下,我添加了一个直径为5毫米、圆心在原点的圆,这样在目标位置选取的时候,可以直观里看到选取的目标位置的径向距离有没有超过最大值

5mm,也可以观察目标位置径向距离显示元件,这样更精确一些。同时,在控制页面的下方,我还添加了X轴、Y轴脉冲总数的显示元件,显示X轴、Y轴方向要执行的脉冲总数,还在控制页面下方添加了两个数据显示元件(地址类型为配方地址),来实时显示并记录电机当前位置,来显示当前电机的位置,并实时记载电机当前位置,这样可以在断电或者伺服OFF时,保存当前电机位置,不至于在重新上电或伺服ON时,电机上次运行的位置丢失。

在这几种模式程序的编写中,有几点经验是相同的:

1、在这几种模式的程序的开始,都使用了快选窗口,在快选窗口里可以进行登录、注销、重新启动、控制画面切换等操作,这种方式也是实际应用中必不可少的,因为它方便、快捷。

2、在这几种模式的程序里,除了可在各种模式的控制窗口里正常进入报警处理窗口外,还另外添加了一个报警处理弹出窗口,同时在公共窗口添加了一个与报警弹出窗口等大小的直接窗口,并设定弹出窗口为报警处理窗口,这样不管当前页面为哪个页面,如果有警情,报警处理弹出窗口都可以自动弹出来,方便操作人员及时进行报警处理。

3、因为保存参数按键不常使用,所以我在保存参数的安全选项里设定最少按键时间为2秒钟,这样可以避免误触保存参数按键,造成原来保存的参数丢失。同时还设定了该按键在伺服OFF时有效,伺服ON时无效,这样可以避免在伺服驱动器上电时电机自动运行。

4、在选择位状态指示灯时,要用不同状态颜色反差比较大的指示灯,这样便于识别。

此外,还需要指出的一点是,A6系列的驱动器在进行485联机通信时,不可以使用2号机器编号,因为据客服人员讲,驱动器软件里存在漏洞,不能识别2号机器编号。所以在联机通信时,要使用1号和2号以后的机器编号。同时还需要注意的是,在用485方式进行联机通信的时候,要采用手拉手的方式,就是触摸屏连一个伺服驱动器,这个驱动器再连下一个,这样一个连一个,不能出现分支的情况。

因为前面几种模式程序的编写的主要目的是练习,是为编写两轴联动的APCM单次绝对位置定位模式这个程序打基础的,所以在这里只附带两轴联动的APCM单次绝对位置定位模式程序宏指令以及对应语句的解释。

/************************初始化指令*****************************/ macro_command main()

short a,b

int pulsex,pulsey

a=3714 //APCM控制字:0000111010000010 b=127 //X轴5mm距离对应的屏上坐标长度SetData(b, "Local HMI", LW, 5, 1) //将X轴移动的定位虚线移动到原点SetData(b, "Local HMI", LW, 8, 1) //将Y轴移动的定位虚线移动到原点SetData(a, "MODBUS RTU", 4x, 1#102, 1) //将APCM控制字写进1号伺服65号参数SetData(a, "MODBUS RTU", 4x, 3#102, 1) //将APCM控制字写进2号伺服65号参数SetData(b, "Local HMI", LW, 13, 1)

SetData(b, "Local HMI", LW, 14, 1) //将显示电机轴当前位置的元件移到原点GetData(pulsex, "Local HMI", RW, 20, 1)

GetData(pulsey, "Local HMI", RW, 22, 1) //得到关机前电机X Y轴向已运行脉冲数SetData(pulsex, "MODBUS RTU", 4x, 1#145, 1) //将关机前电机X Y轴向已运行冲SetData(pulsey, "MODBUS RTU", 4x, 3#145, 1) //数写入已运行脉冲数0x90号的参end macro_command //数里

/************************X Y轴停止*****************************/ macro_command main()

bool a,b

a=true

b=false

SetData(a, "MODBUS RTU", 0x, 1#3, 1)

SetData(b, "MODBUS RTU", 0x, 1#3, 1) //X轴脉冲减速信号

SetData(a, "MODBUS RTU", 0x, 3#3, 1)

SetData(b, "MODBUS RTU", 0x, 3#3, 1) //Y轴脉冲减速信号

SetData(a, "MODBUS RTU", 0x, 1#4, 1)

SetData(b, "MODBUS RTU", 0x, 1#4, 1) //X轴脉冲到位信号

SetData(a, "MODBUS RTU", 0x, 3#4, 1)

SetData(b, "MODBUS RTU", 0x, 3#4, 1) //Y轴脉冲到位信号

end macro_command

/*************读取目标距离写入电机并记录本次电机轴位置*************/ macro_command main()

float distance,distance1,distancex,distancey,x,y,c,d,g,h,j,k,l,m

int pulsex,pulsey,pulsexx,pulseyy //pulsexx pulseyy:上次记录的已运行脉冲数short a,b,beishu,speedx,speedy,speed

bool OFF

speed=40

OFF=false

GetData(distancex, "Local HMI", LW, 0, 1)

GetData(distancey, "Local HMI", LW, 2, 1) //读取目标距离元件里设定的X Y轴坐标distance1=distancex*distancex+distancey*distancey

SQRT(distance1, distance)

SetData(distance, "Local HMI", LW, 15, 1) //计算目标位置的径向距离

c=distancex/5*127

d=distancey/5*127 //计算当前设定目标位置在新坐标系上相对原点的位置x=c+438

y=244-d //目标位置在屏幕原始坐标系上的坐标a=x-311

b=y-117 //目标位置相对相对新坐标系左上角在X Y轴的变化距离SetData(a, "Local HMI", LW, 5, 1)

SetData(b, "Local HMI", LW, 8, 1) //将目标位置的变化距离传给移动图形虚线pulsex=distancex*80000

pulsey=distancey*80000 //将目标位置的坐标由毫米转化为脉冲数SetData(pulsex, "MODBUS RTU", 4x, 1#41, 1) //将需要运行的脉冲总数写入SetData(pulsey, "MODBUS RTU", 4x, 3#41, 1) //相应伺服

SetData(OFF, "Local HMI", LB, 1, 1) //将触发该宏指令的位地址置1 GetData(pulsexx, "Local HMI", RW, 20, 1) //读取上次运行结束时X Y轴GetData(pulseyy, "Local HMI", RW, 22, 1) //已运行脉冲数

j=pulsexx*1.0/80000

k=pulseyy*1.0/80000 //计算出上次电机轴的位置(单位:mm) l=distancex-j

m=distancey-k //计算两次目标位置之间的距离

if l<=0 then

g=(-1)*l

else

g=l

end if //计算X轴方向两次目标之间距离的绝对值if m<=0 then

h=(-1)*m

else

h=m

end if //计算Y轴方向两次目标之间距离的绝对值if g==0 or h==0 then

SetData(speed, "MODBUS RTU", 4x, 1#44, 1) //如果有一个方向的目标位置相对上SetData(speed, "MODBUS RTU", 4x, 3#44, 1) //次没有变化,则将另一方向上的电机else if g>h then //速度设为40rpm

beishu=40/g //如果X轴向目标距离变化距离大于Y轴目标距离变化距离speedx=g*beishu //求出40除以最大变化距离得出的整数值

speedy=h*beishu //将该整数值乘以每个轴向目标距离变化距离,取结果

//的整数值作为该轴向的电机运行速度值SetData(speedx, "MODBUS RTU", 4x, 1#44, 1) //将求出的各轴电机运行速度值SetData(speedy, "MODBUS RTU", 4x, 3#44, 1)// 赋给相应伺服2B号参数

else if g<=h then //如果Y轴向目标距离变化距离大于或等于X轴目标距离

//变化距离

beishu=40/h //求出40除以最大变化距离得出的整数值

speedx=g*beishu //将该整数值乘以每个轴向目标距离变化距离,取结果

speedy=h*beishu //的整数值作为该轴向的电机运行速度值

SetData(speedx, "MODBUS RTU", 4x, 1#44, 1) //将求出的各轴电机运行速度值SetData(speedy, "MODBUS RTU", 4x, 3#44, 1) // 赋给相应伺服2B号参数

end if

end macro_command

/****************读取触碰点坐标并将各项参数写入伺服****************/ macro_command main()

short x,y,a,b,e,f,speed,beishu,speedx,speedy

float c,d,g,h,j,k,l,m,distance,distance1

int pulsex,pulsey,pulsexx,pulseyy

speed=40

GetData(x, "Local HMI", LW, 9042, 1)

GetData(y, "Local HMI", LW, 9043, 1) //读取本次光标所点位置坐标

e=x-311

f=y-117 //计算出光标所点位置相对新坐标系左上角的变化距离SetData(e, "Local HMI", LW, 5, 1)

SetData(f, "Local HMI", LW, 8, 1) //将光标位置变化传给移动图形虚线

a=x-438

b=244-y

c=(a*1.0)/127*5 //计算出目标位置在新坐标系X轴上的坐标

d=(b*1.0)/127*5 //计算出目标位置在新坐标系Y轴上的坐标pulsex=c*80000

pulsey=d*80000 //求出各轴相对应的脉冲数

pulsex=pulsex-pulsex%800

pulsey=pulsey-pulsey%800 //修正发送的脉冲为800的倍数,因为驱动器接受

//800个脉冲丝杠运行1丝(0.01mm)

c=pulsex*1.0/80000

d=pulsey*1.0/80000 //计算目标位置在新坐标系上的X Y坐标

SetData(c, "Local HMI", LW, 0, 1)

SetData(d, "Local HMI", LW, 2, 1) //准确显示目标位置在新坐标系上的X Y坐标distance1=c*c+d*d

SQRT(distance1, distance)

SetData(distance, "Local HMI", LW, 15, 1) //计算目标位置的径向距离SetData(pulsex, "MODBUS RTU", 4x, 1#41, 1)

SetData(pulsey, "MODBUS RTU", 4x, 3#41, 1) //将各轴上脉冲数写入相应伺服GetData(pulsexx, "Local HMI", RW, 20, 1)

GetData(pulseyy, "Local HMI", RW, 22, 1) //读取上次各轴已运行脉冲数

j=pulsexx*1.0/80000

k=pulseyy*1.0/80000 //计算上次电机位置

l=c-j

m=d-k //计算两次目标位置之间的距离

if l<=0 then //本段程序注释与上个计算速度的程序的注释一样,在次就不注释g=(-1)*l

else

g=l

end if

if m<=0 then

h=(-1)*m

else

h=m

end if

if g==0 or h==0 then

SetData(speed, "MODBUS RTU", 4x, 1#44, 1)

SetData(speed, "MODBUS RTU", 4x, 3#44, 1)

else if g>h then

beishu=40/g

speedx=g*beishu

speedy=h*beishu

SetData(speedx, "MODBUS RTU", 4x, 1#44, 1)

SetData(speedy, "MODBUS RTU", 4x, 3#44, 1)

else if g<=h then

beishu=40/h

speedx=g*beishu

speedy=h*beishu

SetData(speedx, "MODBUS RTU", 4x, 1#44, 1)

SetData(speedy, "MODBUS RTU", 4x, 3#44, 1)

end if

end macro_command

/*********将反馈回的脉冲传给图形工作台并保存当前电机轴位置*********/ macro_command main()

int pulsex,pulsey

short x,y,x1,y1,a,b

float distance,distance1

GetData(pulsex, "MODBUS RTU", 4x, 1#145, 1)

GetData(pulsey, "MODBUS RTU", 4x, 3#145, 1) //读取各轴已运行脉冲数distance1=(pulsex*1.0/80000)*(pulsex*1.0/80000)+(pulsey*1.0/80000)*(pulsey*1.0 /80000)

SQRT(distance1, distance) //计算出当前电机轴位置在新坐标系上的径向距离SetData(distance, "Local HMI", LW, 17, 1) //显示当前电机的径向位移

x=(pulsex*1.0)/80000/5*127

y=(pulsey*1.0)/80000/5*127 //当前电机轴在屏幕坐标系上的位置

a=127+x

b=127-y

SetData(a, "Local HMI", LW, 13, 1)

SetData(b, "Local HMI", LW, 14, 1) //将电机轴坐标变化传给移动图形工作台SetData(pulsex, "Local HMI", RW, 20, 1)

SetData(pulsey, "Local HMI", RW, 22, 1) //保存当前电机轴位置

end macro_command

/*********************原点校正图形工作台回归**********************/ macro_command main()

int b

short a

a=127

b=0

SetData(a, "Local HMI", LW, 13, 1)

SetData(a, "Local HMI", LW, 14, 1) //移动图形图形工作台到原点SetData(b, "MODBUS RTU", 4x, 1#145, 1)

SetData(b, "MODBUS RTU", 4x, 3#145, 1) //将已运行脉冲数置0 SetData(b, "Local HMI", RW, 20, 1)

SetData(b, "Local HMI", RW, 22, 1) //记录原点校正后的电机轴坐标(0.00,0.00 ) end macro_command

/*********************X轴报警清楚复位**********************/

macro_command main()

bool OFF

OFF=false

DELAY(1000) //报警清除地址置ON后延时1s,清楚报警

SetData(OFF, "MODBUS RTU", 0x, 1#9, 1) //报警清除位地址复位

end macro_command

/*********************Y轴报警清楚复位**********************/

macro_command main()

bool OFF

OFF=false

DELAY(1000) //报警清除地址置ON后延时1s,清楚报警

SetData(OFF, "MODBUS RTU", 0x, 3#9, 1) //报警清除位地址复位

end macro_command

/*********************X轴恒距点动递加**********************/

macro_command main()

int pulse,pulsex

short speed,a,b

bool OFF,ON

speed=40

ON=true

OFF=false

GetData(pulse, "MODBUS RTU", 4x, 1#145, 1) //读取当前已运行脉冲数pulsex=pulse+800 //将目标脉冲数设定为当前已运行脉冲数+800 a=pulsex*1.0/80000/5*127 //目标位置X轴距离

b=127+a

SetData(b, "Local HMI", LW, 5, 1) //移动X轴向移动的虚线到目标位置SetData(pulsex, "MODBUS RTU", 4x, 1#41, 1) //写入脉冲个数

SetData(speed, "MODBUS RTU", 4x, 1#44, 1) //写入运行速度

SetData(ON, "MODBUS RTU", 0x, 1#5, 1)

SetData(OFF, "MODBUS RTU", 0x, 1#5, 1) //启动

DELAY(2000)

GetData(pulse, "MODBUS RTU", 4x, 1#145, 1) //读取当前已运行脉冲SetData(pulse, "Local HMI", RW, 20, 1) //保存电机轴当前位置

end macro_command

/*********************X轴恒距点动递减**********************/

macro_command main()

int pulse,pulsex

short speed,a,b

bool OFF,ON

speed=40

ON=true

OFF=false

GetData(pulse, "MODBUS RTU", 4x, 1#145, 1) //读取当前已运行脉冲pulsex=pulse-800 //将目标脉冲数设定为当前已运行脉冲数-800 a=pulsex*1.0/80000/5*127 //目标位置X轴距离

b=127+a

SetData(b, "Local HMI", LW, 5, 1) //移动X轴向移动的虚线到目标位置SetData(pulsex, "MODBUS RTU", 4x, 1#41, 1) //写入脉冲个数

SetData(speed, "MODBUS RTU", 4x, 1#44, 1) //写入运行速度

SetData(ON, "MODBUS RTU", 0x, 1#5, 1)

SetData(OFF, "MODBUS RTU", 0x, 1#5, 1) //启动

DELAY(2000)

GetData(pulse, "MODBUS RTU", 4x, 1#145, 1) //读取当前已运行脉冲SetData(pulse, "Local HMI", RW, 20, 1) //保存电机轴当前位置

end macro_command

/*********************Y轴恒距点动递加**********************/ macro_command main()

int pulsey,pulse

short speed,a,b

bool OFF,ON

speed=40

ON=true

OFF=false

GetData(pulse, "MODBUS RTU", 4x, 3#145, 1) //读取当前已运行脉冲pulsey=pulse+800 //将目标脉冲数设定为当前已运行脉冲数+800 a=pulsey*1.0/80000/5*127 //目标位置Y轴距离

b=127-a

SetData(b, "Local HMI", LW, 7, 1) //移动Y轴向移动的虚线到目标位置SetData(pulsey, "MODBUS RTU", 4x, 3#41, 1) //写入脉冲

SetData(speed, "MODBUS RTU", 4x, 3#44, 1) //写入速度

SetData(ON, "MODBUS RTU", 0x, 3#5, 1) //启动

SetData(OFF, "MODBUS RTU", 0x, 3#5, 1)

DELAY(2000)

GetData(pulse, "MODBUS RTU", 4x, 3#145, 1) //读取当前已运行脉冲SetData(pulse, "Local HMI", RW, 22, 1) //保存电机轴当前位置

end macro_command

/*********************Y轴恒距点动递减**********************/ macro_command main()

int pulsey,pulse

short speed,a,b

bool OFF,ON

speed=40

ON=true

OFF=false

GetData(pulse, "MODBUS RTU", 4x, 3#145, 1) //读取当前已运行脉冲pulsey=pulse-800 //将目标脉冲数设定为当前已运行脉冲数-800 a=pulsey*1.0/80000/5*127 //目标位置Y轴距离

b=127-a

SetData(b, "Local HMI", LW, 7, 1) //移动Y轴向移动的虚线到目标位置SetData(pulsey, "MODBUS RTU", 4x, 3#41, 1) //写入脉冲

SetData(speed, "MODBUS RTU", 4x, 3#44, 1) //写入速度

SetData(ON, "MODBUS RTU", 0x, 3#5, 1) //启动

SetData(OFF, "MODBUS RTU", 0x, 3#5, 1)

DELAY(2000)

GetData(pulse, "MODBUS RTU", 4x, 3#145, 1) //读取当前已运行脉冲SetData(pulse, "Local HMI", RW, 22, 1) //保存电机轴当前位置

end macro_command

/*************8*************原点回归***************************/ macro_command main()

int pulse,pulsex,pulsey

float distance,g,h,l,m

short a,speed,speedx,speedy,beishu

bool ON,OFF

pulse=0

a=127

distance=0

speed=40

ON=true

OFF=false

SetData(pulse, "MODBUS RTU", 4x, 1#41, 1)

SetData(pulse, "MODBUS RTU", 4x, 3#41, 1) //将两轴脉冲总数置为0 SetData(a, "Local HMI", LW, 5, 1)

SetData(a, "Local HMI", LW, 8, 1) //虚线回归原点

SetData(distance, "Local HMI", LW, 0, 1)

SetData(distance, "Local HMI", LW, 2, 1) //目标距离元件置0

GetData(pulsex, "MODBUS RTU", 4x, 1#145, 1)

GetData(pulsey, "MODBUS RTU", 4x, 3#145, 1) //读取已运行脉冲数

l=pulsex*1.0/80000

m=pulsey*1.0/80000 //计算出本次电机位置

if l<=0 then //本段程序注释与上边计算速度的程序的注释一样,在次不再注释g=(-1)*l

else

g=l

end if

if m<=0 then

h=(-1)*m

else

h=m

end if

if g==0 or h==0 then

SetData(speed, "MODBUS RTU", 4x, 1#44, 1)

SetData(speed, "MODBUS RTU", 4x, 3#44, 1)

else if g>h then

beishu=40/g

speedx=g*beishu

speedy=h*beishu

SetData(speedx, "MODBUS RTU", 4x, 1#44, 1)

SetData(speedy, "MODBUS RTU", 4x, 3#44, 1)

else if g<=h then

beishu=40/h

speedx=g*beishu

speedy=h*beishu

SetData(speedx, "MODBUS RTU", 4x, 1#44, 1)

SetData(speedy, "MODBUS RTU", 4x, 3#44, 1)

end if

SetData(ON, "MODBUS RTU", 0x, 1#5, 1)

SetData(OFF, "MODBUS RTU", 0x, 1#5, 1) //启动X轴伺服电机

SetData(ON, "MODBUS RTU", 0x, 3#5, 1)

SetData(OFF, "MODBUS RTU", 0x, 3#5, 1) //启动Y轴伺服电机

end macro_command

/*************8**********读取上次电机轴位置***********************/ macro_command main()

int pulsex,pulsey

short x,y,a,b,c

c=1

GetData(pulsex, "Local HMI", RW, 20, 1)

GetData(pulsey, "Local HMI", RW, 22, 1) //读取上次电机轴位置(已运行脉冲数) SetData(pulsex, "MODBUS RTU", 4x, 1#145, 1) //将上次电机轴位置(已运行脉冲数) SetData(pulsey, "MODBUS RTU", 4x, 3#145, 1)//写入各个伺服驱动器0x90号参数x=(pulsex*1.0)/80000/5*127

y=(pulsey*1.0)/80000/5*127 //计算当前工作台位置

a=127+x

b=127-y

SetData(a, "Local HMI", LW, 13, 1)

SetData(b, "Local HMI", LW, 14, 1) //将工作台变化传给移动图形工作台SetData(c, "Local HMI", LB, 20, 1)

end macro_command

赵群辉

2011-1-19

触摸屏控控制

触摸屏控控制 1 触摸屏原理 S3C2410接4线电阻式触摸屏的电路原理如图1所示。整个触摸屏由模向电阻比和纵向电阻线组成,由nYPON、YMON、nXPON、XMON四个控制信号控制4个MOS 管(S1、S2、S3、S4)的通断。S3C2410有8个模拟输入通道。其中,通道7作为触摸屏接口的X坐标输入(图1的AIN[7]),通道5作为触摸屏接口的Y坐标输入(图1的AIN[5])。电路如图2所示。在接入S3C2410触摸屏接口前,它们都通过一个阻容式低通滤器滤除坐标信号噪声。这里的滤波十分重要,如果传递给S3C2410模拟输入接口的信号中干扰过大,不利于后续的软件处理。在采样过程中,软件只用给特殊寄存器置位,S3C2410的触摸屏控制器就会自动控制触摸屏接口打开或关闭各MOS管,按顺序完成X坐标点采集和Y坐标点采集。 2 S3C2410触摸屏控制器 S3C2410触摸屏控制器有2种处理模式: ①X/Y位置分别转换模式。触摸屏控制器包括两个控制阶段,X坐标转换阶段和Y坐标转换阶段。 ②X/Y位置自动转换模式。触摸屏控制器将自动转换X和Y坐标。 本文使用X/Y位置自动转换模式。 3 S3C2410触摸屏编程 由于触摸屏程序中参数的选取优化需要多次试验,而加入操作系统试验参数,每次编译下载耗费时间过多,不易于试验的进行,因而我们直接编写裸机触摸屏程序。三星公司开放了S3C2410测试程序2410test(可在三星网站下载),提供了触摸屏接口自动转换模式的程序范例,见本刊网站。本文在此范例的基础上编写了触摸屏画图板程序——在显示屏上画出触摸笔的流走痕迹。 针对坐标点采样时产生的噪声,本文采用噪声滤波算法,编写了相应的噪声滤波程序,滤除干扰采样点。整个触摸屏画图板程序的处理流程如图3所示。 3.1 程序初始化 初始化触摸屏控制器为自动转换模式。其中寄存器ADCDLY的值需要根据具体的试验选取,可运行本文提供的程序看画线的效果来选取具体的参数。触摸屏中断处理程序Adc_or_TsAuto是判断触摸屏是否被按下了。触摸屏被按下,给全局变量Flag_Touch赋值为Touch_Down,否则赋值为Touch_Up。 初始化脉宽调制计时器(PWM TIMER),选择计时器4为时钟,定义10ms中断1次,提供触摸屏采样时间基准,即10ms触摸屏采样1次。计数器中断处理程序Timer4Intr中判断Flag_Touch被赋值为Touch_Down,则给全局变量gTouchSta rtSample置位,以控制触摸屏采样。 之后清除触摸屏中断和计时器中断屏蔽位,接受中断响应,同时计时器开始计时。 3.2 触摸屏采样程序

实用文档之西门子SMART700 触摸屏的使用说明书

实用文档之"触摸屏的使用说明书" 一、简介 THPSSM-1型系统的人机界面采用西门子SMART触 摸屏。人机界面采用西门子Smart 700触摸屏。人机 界面是在操作人员和机器设备之间做双向沟通的桥 梁,用户可以自由的组合文字、按钮、图形、数字等 来处理、监控、管理随时可能变化的信息的多功能显 示屏幕。 注意事项: 1.请确保在HMI设备外部为所有连接电缆预留 足够的空间。 2.安装HMI设备时,确保人员、工作台和整体设备正确接地。 3.连接电源:仅限DC24V。 Smart 700面板说明:

二、连接组态PC 1.组态PC 能够提供下列功能: 1.1传送项目; 1.2传送设备映像; 1.3将HMI 设备恢复至工厂默认设置; 1.4备份、恢复项目数据。 2.将组态PC 与Smart Panel 连接: 2.1关闭HMI 设备; 2.2将 PC/PPI 电缆的RS485 接头与HMI 设备连接; 2.3将PC/PPI 电缆的RS232 接头与组态PC 连接。 三、连接HMI设备 1.串行接口 序号D-sub 接头针脚 号 RS485 RS422 1 1 NC. NC. 2 2 M24_Out M24_Out 3 3 B(+) TXD+ 4 4 RTS*) RXD+ 5 5 M M 6 6 NC. NC. 7 7 P24_Out P24_Out 8 8 A(-) TXD- 9 9 RTS*) RXD- 2.下表显示了 DIP 开关设置。可使用 RTS 信号对发送和接收方向进行内部通讯开关设置含义 RS485 SIMATIC PLC 和 HMI 设备之间进行数据传输时,连接头上没有 RTS 信号(出厂状态)

触摸屏实训报告

天津电子信息职业技术学院 计算机控制综合实训 触摸屏实训报告 姓名 zyh 学号 04 班级电气s07-3班 专业电气自动化 所在系电子技术系 指导教师郑凤歧、张晓燕 完成日期 2009年11月26日 前言 ehsy西域品质提供的西门子5.7英寸触摸屏k-tp178micro系列有如下特点: ☆ 5.7 英寸触摸屏, 蓝色4级灰度显示 ☆ s7-200 plc专用触摸屏 ☆友好的操作界面:触摸屏+按键 ☆快速的系统启动时间和操作响应时间 ☆超大存储空间 ☆触摸声音反馈 ☆硬件设计全面更新,无与伦比的高可靠性 ☆ 5种在线语言切换,32种语言支持,使您的设备能应用于 世界各地 ☆强大的密码保护功能,50个用户组 ☆更高的鲁棒性,防冲击和震动,并能防水耐脏 ☆采用32位arm7处理器,性能优异 ☆集成的lcd控制器,消除了cpu和lcd控制器的之间的 传输瓶颈 ☆组态软件:wincc flexible,编程灵活快捷 ☆为中国用户量身定做,符合中国用户使用习惯 ☆作为众多知名品牌的合作伙伴,ehsy西域以其优良的品 质和服务来保证操作人员的职业健康,安全环境和美好未 来。 - 1 - 技术参数 - 2 - - 3 - k-tp178micro触摸屏的多行业应用 工程机械行业一般来说工作环境恶劣,常常要在露天和强光照射下工作,灰尘、油污很 多,因此要求此类机械设备具有很强的抗冲击、抗振动的能力。 k-tp178micro是该公司专门针对中国中小型自动化产品用户需求而设计的全新 5.7ins7-200专用触摸屏。它集中了同类产品的众多优点,功能强大、性能优越、高可靠性、 外表美观、同时价格低廉,适合使用在众多的自动化设备上。k-tp178micro倾注了全球领先 的设计理念、采用最先进的hmi技术,选用最可靠的电子元器件,以及本地化的生产策略。 k-tp178micro与s7-200plc完美结合,能给客户提供最佳的解决方案。 k-tp178micro以其先进强大的功能,稳定可靠的质量,低廉的价格和完善的服务广泛应

触摸屏总结

系统参数设置 新增参数设置出现 点击用户密码在12个用户中选用一个用户,例如用户1。在用户密码栏设置自己的需要的密码和类别之后确定系统参数对话框。 用户登录设置 首先新增文字元件选择图标出现新增文字元件对话框,在内容一栏中写入“用户登陆” 设置字体、颜色、字体大小等。在用户登录文字之后创建数值输入元件在一般属性 中读取地址一栏中点击设置出现 选中系统寄存器,之后设备类型一栏中有变化,选择下拉菜单,选中LW-9219(16bit):用户编号(1-12)如图: 用户登录设置就完成了, 用户密码设置 同用户登录一样首先创建文字元件设置字体后同样选择数值输入元件。步骤如“用户登录”一样。在设备类型中设置LW-9220(32bit):用户密码如图:

同时在数字格式一栏中显示格式设为密码,这样密码栏可以显示*而不是数字,提高保密功能,之后设置数字位数。数字位数主要是显示密码的位数,密码的位数应该小于设置的位数,否则出错。其它参数根据需要自行设置。 登录按钮设置 新增功能键按钮点击之后出现新增功能键元件编号窗口一栏设 置自己要进入的窗口,在使用者限制一栏中操作类别 设置之前设置的类别。 最后应该设置一个文字元件写入“登陆”便于用户使用。 登陆设置 新增功能键元件出现新增功能键元件,选择切换基本窗口,在窗口标号中设置想要切换的窗口,如:在安全 中使用者权限中,选择自己之前设置的类别在图片中设置按钮的图标。其它设置根据自己的需要自行设置。 注销设置 新增位状态设置元件一般属性中写入地址一栏点击设置出现地址对话框,在系统寄存器复选框中选中,之后在设备类型中找到LB-9050:用户登出 点击确定。根据需要设置开关类型,其它设置根据需要自行设置,注:使用者权限一栏中不做任何设置。

ADP 触摸屏说明书

HITECH系列触摸屏ADP6软件使用说明 ADP6软件采用“所见即所得”、“对象导向”理念,实现“拖曳式”编辑。 一、建立新的工程文件 点击菜单中文件→新建或点击快捷工具栏中的打开新文件图标,弹出工作参数对话框,选择人机界面种类和PLC种类(视使用的人机和PLC种类选择,本训练使用PWS6600 Color标准型和Simatic S7200 PPI),其他内容默认。新文件建立之后“确定”即可进入画面编辑。 图1 设定工作参数 二、画面编辑 当前画面为画面1,如需要设计多画面,在菜单中点击画面→新建画面,弹出产生新画面对话框,增加画面2,可以填写画面名称,确定后即为当前画面,其他画面依此方法操作。通过点击画面→画面管理员,显示画面大纲,双击某画面或选中后使用右键弹出菜单→开启画面就可设为当前画面,也可使用快捷按钮在上下画面间切换。 单击查看→放大画面,选择一定比例使画面大小合适。 在HITECH系列触摸屏中,可使用的画面元件有下列几类: ①可触摸元件指在画面上定义的按钮(开关)、切换画面的按键,这些元件一般兼有可触摸功能、数据输入功能和显示功能。

②状态显示元件指在画面上定义的状态灯(指示器)、动态字符信息显示等,触摸这些元件时系统没有反应,仅仅被用作信号的运行状态显示。 ③动态资料及人机记录缓冲区显示元件指在画面上定义的图表(棒图、折线图、圆形图、仪表盘、条形统计图、圆形统计图、折线统计图)或人机界面使用PLC内存作记录缓冲区状态显示元件(历史趋势图、表)。 ④静态显示元件指在画面上定义的静态文字、静态图形(直线、圆、矩形、文字等)背景元件,不受PLC程序控制。 除静态显示元件外,画面元件和PLC控制程序相关,画面元件地址为PLC 内部存储器(位)、变量存储器(字、双字)地址,并出现在PLC程序中,可触摸元件为输入元件,其他为输出元件。 (1)按钮 功能 设ON按钮:按一次对应接点设为ON,手放开或再按仍为ON。 设OFF按钮:按一次对应接点设为OFF,手放开或再按仍为OFF。 交替型按钮:按一次按钮该接点设为ON,手放开仍为ON;再按一次OFF。 保持型按钮:按住此按钮该接点ON,手放开OFF。 复状态按钮:如此按钮有3个状态,按一次按钮送 S0 信号给PLC,再按一次按钮送 S1 信号给PLC,再按一次按钮送 S2信号给PLC,此按钮 可正循环动作(S0→S1→S2→S0)或反循环动作(S0→S2→S1→S0)。 状态数最多可达256个。 设值按钮:触摸此按钮,人机马上就送出指定的常数值给PLC相对应之缓存器。加/减值按钮:触摸此按钮,人机马上先从PLC读取缓存器的内容值并加/减所设数值,再将运算结果写至PLC相对应之缓存器。 换画面按钮:按一次该按钮,人机直接切换到指定画面。属性中—“指定生效位” →当指定的位条件成立才能换页。“认知警报”→表示人机已经收 到目前所发生的警报讯息。“通知”→换画面的同时,触发一接点。回前一画面:按一次该按钮,人机就切换回屏幕先前一次显示的画面。 数据转文字文件:可将记录缓冲区,配方数据,警报历史文件,警报频次文件等数据转成文字文件(*.PRN)存档,亦可由EXCEL,WORD,记事本等 文书软件读出。(SoftPanel 才提供) 功能按钮:在功能键中包含下列17种选项,从对比度上升到执行应用程序等。 对比度上升按该按钮,人机屏幕对比增加。(SoftPanel 不提供) 对比度下降按该按钮,人机屏幕对比减少。(SoftPanel 不提供) 保存对比度按该按钮,人机储存对比。(SoftPanel 不提供) 密码表按一次该按钮,人机就显示系统密码表的窗口。LEVEL=1才能操作。 重新输入密码按一次该按钮,人机就显示重新输入密码的窗口。 设为最低用户等级按一次该按钮,人机系统就切换为密码最低等级 LEVEL=3。 打印画面按一次该按钮,人机就会打印实际应用时此画面的指定打 印区域(HARDCOPY方式)。 回系统目录按一次该按钮,人机就切换回到系统目录画面。LEVEL=1 才能操作。 关闭背灯按一次该按钮,人机就关闭屏幕背灯。(SoftPanel 不提

(中牟)昆仑通态触摸屏部分总结

昆仑通态触摸屏部分总结 常用逻辑脚本 1.登录自动注销脚本 当前时间 =!TimeI2Str(!GetLastMouseActionTime(),"%X")'获取鼠标的最后动作时间 设定时间 =!TimeSpanGetMinutes(!TimeGetSpan(!TimeGetCurrentTime(),!GetLastMouse ActionTime()))'计算鼠标最后的活动时间与当前时间的差值 if flag1 = 0 then'判定是不是已经打开了一个登录窗口。 if !strComp("负责人",!GetCurrentUser())=0 OR !strComp("操作员",!GetCurrentUser())=0 then'判定当前的用户 if 设定时间 >=50 then'鼠标停止动作是否已经超过50分钟 回车=1 '注意这两个赋值的顺序,须先赋值在执行!LogOff() flag1=1' !LogOff( ) endif endif endif if 回车=1 then !SendKeys("{ENTER}")'发送ENTER键 flag1 = 0 回车 = 0 endif 2.自动切换画面脚本 if 设定时间>=50 then !CloseAllWindow("工艺图1") '50分钟后关闭除“工艺图1”之外所有窗口。(结合自动注销脚本使用)

3.在需要先开阀再开泵的情况时,可通过脚本与隐藏功能结合使用来避免现场误操作 循环脚本:IF XX阀开到位=1 THEN XX泵隐藏变量=1 IF XX阀开到位=0 THEN XX泵隐藏变量=0 注释1:当隐藏变量=1时,触摸屏画面显示开泵按钮,隐藏变量=0时,触摸屏画面显示提示语如“请先开阀!”。 注释2:在有多种状态来判定隐藏条件可利用类似循环语句 4.历史数据自动删除脚本 !DelSaveDat(历史数据,12 ) 利用循环策略,将循环时间设为每月一次,即可实现每月删除12小时之前的历史数据。 5.在有“触屏控制”与“上位控制”切换功能的触屏中 可利用画面启动脚本与退出脚本,使进入画面时触摸屏获得权限(即自动切换到触屏控制),退出画面时自动切换为上位控制。 6.触屏键盘普遍偏小,修改输入键盘大小脚本 !SetNumPanelSize(Type,Size) 函数意义:根据需要和显示屏的大小调整软键盘或配方对话框的小。参数:Type,键盘类型,数值型; 1:代表修改数值输入键盘。

永宏PLC及显控触摸屏安装及简易上载下载操作方法

安装SATOOL6.0触摸屏软件: 1、双击 2、选择中文 3、下一步: 4、选择“我同意”并点击下一步: 5、选择安装目录,默认即可:

6、一直点击下一步直至安装完成,桌面出现。 7、如果安装完毕后驱动仍然不能使用,请手动安装: 1 插入设备之后会有提示未完成安装驱动,忽略; 2 打开设备管理器,选择带有黄色叹号的HMI设备并右键选择更新驱动; 3 在对话框选择“从列表或指定位置安装(高级)”; 4 浏览—选取usb驱动所在的位置—“C:\Program Files\SATOOL\USB”,或“C:\Program Files (x86)\SATOOL\USB” 5 点击下一步-完成;即能完成手动安装驱动的步骤; SATOOL6.0触摸屏上载: 1、打开软件后,选择下载(D)--->上载,如下图: 2、选择上载后,弹出如下窗口,选择文件路径用于保存文件,及工程名称作为文件名:

3、点击上传文件按钮SATOOL6.0触摸屏下载: 1、选择下载(D)--->编译+下载 2、选择下载:

安装WinProladder编程软件: 1、双击,选择下一步: 2、选择安装目录,默认即可,选择下一步: 4、点击下一步直至安装完成。WinProladder编程软件上载: 1、桌面出现,双击打开。

2、注意:必须空白文档,不要新建或者打开文件情况下选择PLC---->联机,弹出如下窗口,选择否: 3、点击自动检知按钮,然后确定: 4、弹出如下窗口,参数默认即可:

5、点击确定后,如果通讯成功的话弹出如下窗口: WinProladder编程软件下载: 1、打开修改好的程序文件,按照上载步骤操作到第5步,弹出如下窗口: 2、这时,弹出窗口,提示程序与PLC不一致,选择是,即可完成下载: 3、选择PLC--->执行,弹出窗口选择是,运行PLC:

触摸屏按键说明

HGT833屏幕按钮 Key1 机械手使用/不使用。(当不使用时,欧规信号全部给出,注塑机可以不受机械手信号影响,使用时欧规信号按设定给出,注塑机运行受到机械手的信号的影响。另外,如果需要重置欧规信号输出,可将机械手使用/不使用按钮开关一次。此外还应注意,当机械手和注塑机配合时,要做到:退出自动运行先停注塑机,开始自动运行先开注塑机,可避免注塑机和机械手配合上的时序问题照成的一系列问题) Key2 机械手自动与手动切换。(在手动模式下,按此按钮,机械手准备进入自动运行状态,一切手动操作都将锁定,等待机械手自动开始。在自动运行下,按此按钮退出自动运行并切换到手动模式。) Key3 机械手自动运行开始。(在机械手在等待自动开始时,按此按钮,机械手进入自动运行状态,也就是key2被按下后,按此按钮进入自动运行) Key4 机械手退出自动运行/页面帮助。(当机械手处于自动运行时,按此按钮机械手将退出自动云行,并切换到手动状态;当机械手处于非自动状态时,按此按钮则可显示当前页面的帮助信息,如果key4按钮灯亮则说明此页面有帮助信息,反之没有) Key5 机械手常用IO信号监控。(监控欧规信号,备用IO,吸盘夹具,功能输入输出等)

Key6 机械手复归。(按下此按钮,机械手进入复归模式;当按下急停按钮后,双击此按钮,系统进入触摸屏校准程序;当出现被零除(DIVIDE BY ZERO)错误时,按下急停按钮,并双击此按钮消除这个错误) Key7 单步运行。(当机械手在单步运行模式下,按一次此按钮进行一步动作。一步动作指教导中的一个图标动作。) Key8 切换到单步运行模式。(当系统在自动运行模式下,按此按钮,系统可切换到单步运行模式) Key9 重置吸盘夹具。(按此按钮,将显示需要重置的吸盘夹具,客户可选择需要重置的吸盘夹具) Key10 快速进入教导模式。

触摸屏是一种新型可编程控制终端解析

1、引言 触摸屏是一种新型可编程控制终端,是新一代高科技人机界面产品,适用于现场控制,可靠性高,编程简单,使用维护方便。在工艺参数较多又需要人机交互时使用触摸屏,可使整个生产的自动化控制的功能得到大大的加强。 PLC有着运算速度高、指令丰富、功能强大、可靠性高、使用方便、编程灵活、抗干扰能力强等特点。近几年,随着科学技术的不断进步,各行业对其生产设备和系统的自动化程度要求越来越高,采用现代自动化控制技术对减轻劳动强度、优化生产工艺、提高劳动生产率和降低生产成本起着很重要的作用。触摸屏结合PLC在闭环控制的变频节能系统中的应用是一种自动控制的趋势。 触摸屏和PLC在闭环控制的变频节能系统中的使用,可以让操作者在触摸屏中直接设定目标值(压力及温度等),通过PLC与实际值(传感器的测量值)进行比较运算,直接向变频节能系统发出运算指令(模拟信号),调节变频器的输出频率。并可实时监控到被控系统实际值的大小及变频器内的多个参数,实现报警、记录等功能。一般PLC结合触摸屏的闭环调节的变频节能系统如下图所示。 2、闭环控制的变频节能系统用途很广,各种场合的变频节能系统的拖动方式及控制方式各有不同,具体应用时应根据实际情况选择设计。下面列举一些: 中央空调节能:冷冻泵、冷却泵、主机、却塔风机、风机盘管等。 恒压供水:水厂一、二级泵,供水管网增压泵、大厦供水水泵等 锅炉:引风机、送风机、给水泵等,变频节能系统的控制调节预处理信号由锅炉自动控制系统、DCS或多冲量控制系统给出。 汽轮机:循环泵、凝结泵等,其控制调节预处理信号由汽轮机自动控制系统及DCS给出。 纯水处理系统:软化水泵、增压泵等。 洁净室:增压风机、FFU群控等等。 3、整个闭环控制的变频节能系统的组成设备及其作用: (1)PLC选用SIEMENS公司的S7-200系列:由CPU224XP、DI/DO模块、AI/AO模块组成。PLC作为控制单元,是整个系统的控制核心。其主要的作用要体现以下几方面: ①完成对系统各种数据的采集以及数字量与模拟量的相互转换。 ②完成对整个系统的逻辑控制及PID调节的运算。 ③向触摸屏提供所采集及处理的数据,并执行触摸屏发出的各种指令。 ④将PID运算的数据结果转换成模拟信号,作为调节变频器的输出频率的控制信号。 ⑤通过通信电缆及USS4协议完成对变频器内部参数读写及控制。 (2)触摸屏采用SIEMENS公司MP370:其主要作用如下: ①可实时显示设备和系统的运行状态。 ②通过触摸向PLC发出指令和数据,再通过PLC完成对系统或设备的控制。 ③可做成多幅多种监控画面,替代了传统的电气操作盘及显示记录仪表等,且功能更加强大。 (3)变频器:采用SIEMENS公司440系列,通过USS4协议可由触摸屏通过PLC设置其内部的部分参数,根据PLC发送过来的数据(模拟量)值调节水泵或风机的转速,并将其内部运行参数反馈到PLC。 (4)压力、温度等传感器:将被控制系统(水系统或风系统)的实际参数值转变成电信号上传至PLC。 (5)电气元件:给PLC、触摸屏、变频器及传感器等供电,完成各种操作及驱动等。 4、触摸屏画面设计 触摸屏画面由ProTool等专用软件进行设计,然后先通过编程电脑调试,合格后再下载到触摸屏。触摸屏画面总数应在其存储空间允许的范围内,各画面之间尽量做到可相互及强制切换。 (1)主画面的设计 一般的,可用欢迎画面或被控系统的主系统画面作为主画面,该画面可进入到各分画面。各分画面均能一步返回主画面。若是将被控主系统画面作为主画面,则应在画面中显示被控系统的一些住要参数,以便在此画面上对整个被控系统有大致的了结。

威纶通触摸屏通讯说明精选文档

威纶通触摸屏通讯说明 精选文档 TTMS system office room 【TTMS16H-TTMS2A-TTMS8Q8-

威纶通触摸屏通讯说明 重置系统为出厂设定 当使用新的触摸屏时必须重新设置触摸屏内部的各种密码。 方法:1.将触摸屏后的止拔开关DIP1,DIP2,DIP3,DIP4(打开触摸屏后盖即可看到相应的标识)对照说明书进行相应的操作。即将DIP Switch 1设置为ON,其余DIP2,DIP3,DIP4Switch保持为OFF 2.给MT8000重新上电此时MT8000会先切换至屏幕触控校正模式,在完成校正动 作后会弹出一个对话窗口如下图。此对话窗口将询问使用者是否将MT8000的系统设定密码恢复为出厂设定,若为是则选定YES即可,反之则选择NO 当选择为YES后,会弹出另一个对话窗口,如下图。此对话窗口将再次确认使用者是否要将MT6000的系统设定密码恢复为出厂设定,并且要求使用者输入YES做为确认,在完成输入后按下OK即可。 3.关闭触摸屏,将其后的止拔开关按照说明书扳到指定位置。(MT6000系列出厂时的系统预设密码为111111,但必须重设其它密码,包括download与upload所使用的密码皆需重设。) 注意:当进行MT8000的重置动作时,触摸屏内的画面程序以及所储存的历史资料将全部被清除。 4.开机重新设置各种密码

Local Password 进入系统设定时所需的密码 Upload Password 上传画面程序时所需的密码 Download Password 下载画面程序时所需的密码 Upload (History) Password 上传取样数据与事件纪录档案时所需的密码。 以下为触摸屏USB驱动程序安装说明: 1、选择第二选项“从列表或指定位置安装(高级)”,并按下“下一步”。

Samkoon远程控制(AK-R触摸屏)功能操作说明

Samkoon远程控制(AK-R触摸屏)功能操作说明 一、概述 远程控制主要用于HMI与PLC的1:1串口连接,支持RS232/422/485,然后将单一设备引入工厂系统,实现物联网及 广域网的控制。其原理是将HMI串口连接到远程控制器的COM1,PLC串口连接到远程控制器的COM2口,原理图如下: 二、远程PC(或手机APP)监控功能 1、打开“RemoteHMI”软件,双击“COM配置”,配置远程控制 器(或HMI选择远程客户端)参数,配置远程控制器连接的 PLC及参数,配置IP参数(客户端在HMI参数设置里配置), 指定远程控制器的IP,添加到指定的WIFI(如更换WIFI, 需要在此指定配置后下载)

2、新建画面,可添加连接设备或PLC的相关变量进行监控和控 制操作,如下图: 3、然后,找到RemoteHMI安装后的位置,点击打开“”文件, 这样PC才能通过服务器远程监控数据,如下图:

4、打开浏览器,输入:,如没有用户,请先注册用户再行登录, 如下图: 5、登录后,添加远程控制器(AK-HMI则是背后的SN序列号) 的SN,一般远程控制器正上部会贴有“RG+12位数字”,输 入后,在远程控制器上插入U盘,点击获取验证码,正常情 况下,会听到“滴”的一声,说明获取验证码成功,拔出U 盘,插入电脑,打开U盘里“”文件,提取验证码,输入到 浏览器,确定添加设备成功,如下图:

浏览器添加设备 提取U盘的验证码 6、下载对应的HMI组态工程项目到HMI,PLC程序到PLC,一 切配置成功,我们就可以通过PC打开“pcAppsys”或者手 机APP打开“HMI Client”远程监控PLC的数据了,如下图:

触摸屏控制器使用说明书

一. 触摸屏控制器型号:FX-TK04U;FX-TK04R;FX-TK05U;FX-TK05R 信息发布内容: 1)深圳方显科技触摸屏控制器可用于任何四线、五线电阻屏,11位AD转换,分辨率可到2048*2048。RS232/USB接口可选。简单的通讯指令即可实现触摸功能。支持操作系统:MS-DOS,WINDOWS3.X/9X/ME/NT/2000/XP/CE,LINUX单片机专用触摸屏控制器,车载专用触摸屏控制器,直接提供菜单式操作,大大节约嵌入式MCU资源;MCU专用接口,使您的产品无须改动直接接入触摸屏控制。 2) 深圳方显科技4线触摸屏控制器产品概述FX-TK04R/FX-TK04U 触摸屏分辨率:2048x2048 4点定位 25点定位 支援鼠标右键 支援画线测试 驱动程序包括:Windows 98, 2000, NT4, Me, XP, XP Tablet Edition, CE 2.12, CE 3.0, https://www.360docs.net/doc/2117069723.html,, Linux, DOS & iMac 多语系的操作窗口 支援多个监视器 具备视觉旋转度 触摸屏通讯接口:RS232 或USB 计算机通讯接口:Pin Header 电气参数 电源要求: +5VDC ( Maximum 100mA, typical 70mA, 50mV peak to peak maximum ripple) 工作温度: 0 to 50℃ 贮存温度: -40 to 80℃ 湿度: 95% at 60℃ 通讯协定:RS232 Model: 9600 bauds, None parity, 8 data bits, 1 stop bit USB Model: USB 1.1 Low speed 采样速度:RS232 Model: Max. 160 points/sec USB Model: Max. 160 points/sec 最大按压延迟时间: Max. 35 ms 出线顺序: X+, Y+, X-, Y- 电阻范围: 200 ~ 900 ohm ( pin to pin on the same layer 3) 单片机专用触摸屏控制器FX-TK04RMCU 深圳方显科技是国内著名显示及触控产品的专业厂商。依靠其强大的研发能力,开发出多款LCD控制器和触摸屏控制器。LCD控制器使得单片机、DSP、各种嵌入式CPU轻松实现LCD (TFT)显示。触摸屏控制器有连笔型和点触型两种。连笔型触摸屏控制器支持4线、5线各尺寸电阻触摸屏。点触型触摸屏控制器可连接各类MCU、单片机、DSP、ARM等嵌入式系统,为不同的客户确定最佳应用。使用点触型触摸屏控制器,开发工程师不再需要详细了解触摸屏工作原理,做复杂的编程,只需简单读取触摸XY位置信息,快速完成研发工作。也可根据不同MCU的特点及不同的功能,为客户定制程序使得各种MCU均能轻松接上触摸屏,实现各具特色的人机接口。

北尔触摸屏使用总结

北尔触摸屏使用总结 盐锅峡工程采用的北尔触摸屏,为首次使用,现总结如下: 优点: 1.触摸屏画面相对easyview美观一些 与easyview相比较,画面要美观一些,功能也要比easyview多一些,相对于GP的功能按钮太多也用不到来讲,贝尔要简洁一些且能满足工程常规需求; 2.脚本比较丰富 基本按钮能做的工作,脚本都能完成,脚本比较丰富,这样存在两个问题:一,需要学习如何使用脚本;二,脚本与功能按钮混用情况较多; 3.支持底板画面 只要做一个底板画面(标准触摸屏画面最上面的一行和画面最下面的索引),其它画面的底板不需要再做了; 4.下载方式 下载支持U盘和网络,切网卡是自适应,不需要考虑网线的型号。网络下载不需要断电重启触摸屏; 5.测点修改支持批量修改 测点支持批量修改,这是通过脚本来实现的,只需要修改对应的.txt文件即可,有个小问题是,每32点一个.txt文件; 6.除下述“缺点”,和上述“特有的优点外”其它能满足工程常规功能需求。 缺点: 1.没有上载功能。由于前期调试期间常出现编辑的画面无法打开的情况,后期更新了编辑 画面包,出现画面的无法打开的情况比较少,没有上载功能需要调试人员做好备份工作; 2.下载较慢,基本下载完成需要5-8分钟; 3.编辑软件必须在windows xp、vista 、7上运行,对于XP 还需要SP3补丁、.NET Framework V3.5 SP1 补丁,而这些补丁又未在安装包里面,需要单独下载安装。vista 、7系统未测试。本工程windows机器由于是服务器只能安装windows 2003 ,所以现场的触摸屏调试必须用调试笔记本。另外由于升级触摸屏软件需要挂到外网上连接intel网,对于监控系统来讲不太合理; 4.触摸屏不能支持多窗口的弹出功能:在调试过程出现,控制令(给PLC对应的地址写值) 第一次可以下发,后面常常无法给PLC的地址写值的情况。后查明是多窗口弹出后,影响了触摸屏与PLC通讯的驱动程序(modbus-RTU)。目前功能采用无窗口弹出的方案解决。目前供货商给了一个处理的方案,在第二批机柜上可以做测试; 5.反应较慢,供货商给出的解释是贝尔触摸屏是先刷数据,后刷画面,认为类似easyview 触摸屏是先刷画面,后刷数据,个人认为这个应该和这个软件本身有关。目前触摸屏的反应速度情况是:同种类型的刷新画面较快,不同类型的一样较慢,反应时间在3-4秒之间; 6.触摸屏的系统时间,无法通过PLC给触摸屏,导致如果时间不对时,触摸屏的一览表内 时间无法和上位机一致; 7.对于一个新工程,需要修改脚本的地方比较多。 8.编辑软件会出现死掉的情况(无法操作),等足够长的时间(5-10分钟)才能可以操作; 总结:蔡守辉、何霏霏

触摸屏说明书

触摸屏使用方法: 触摸区控制是与按钮控件结合在一起的,根据用户在配套软件中的按钮控件设置,当用户点击在该按钮触摸区处时,可指定连接下一页面、发送控件ID 号或者发送坐标值。用户点击在非按钮触摸区时,人机界面终端将不进行任何操作。 发送控件ID号时,前2个字节为“FC FC”为数据帧头,表示发送的数据为触摸屏数据,后面2个字节为控件ID号,低字节在前,高字节在后。 发送坐标值时,前2个字节为“FE FE”为数据帧头,表示发送的数据为触摸屏数据;后面4个字节为触摸屏x、y坐标数据,x坐标在前,y坐标在后,同样低字节在前,高字节在后。 若多层显示时,触摸区控制操作页面默认的是最近一次进行调用操作的页面,此时如果想激活其它的页面,则使用1B 33指令进行操作页面更改。 触摸屏所点之处都有鼠标显示,如果不想显示,可用命令1B 30 00 FF FF EE FF 关掉显示。 触摸屏模式选择命令 格式∶十六进制码∶ 1B 20 MODE FF FF EE FF 解释:1B:为命令帧头,20:为命令。MODE:为模式选择值,一个BYTE。 FF FF EE FF为帧结束。 MODE:0x00:表示单点触发,即按下触摸屏到抬起时只发送一次触摸屏通码 数值,抬起时无断码发送。 0x01:表示单点触发,即按下触摸屏到抬起时只发送一次触摸屏通码 数值,抬起时有断码发送。

如果在上位机按钮控件属性设置中设置为返回控件ID号,断码 为:FC F0 ID;ID为一个WORD,低字节在前高字节在后。 如果在上位机按钮控件属性设置中设置为返回当前点击的坐标 值,断码为:FE F0 X Y ;X,Y均为一个WORD,低字节在前高 字节在后。 0x02:表示连续触发,即按下触摸屏后一直不停地发送触摸屏数值,直到抬起,抬起时无断码发送。发送的每组触摸屏数据之间的 时间间隔可以用命令来控制,命令详见“发送触摸屏数据时间 间隔设置命令”。 0x03:表示连续触发,即按下触摸屏后一直不停地发送触摸屏数值,直到抬起,抬起时有断码发送。 如果在上位机按钮控件属性设置中设置为返回控件ID号,断码 为:FC F0 ID;ID为一个WORD,低字节在前高字节在后。 如果在上位机按钮控件属性设置中设置为返回当前点击的坐标 值,断码为:FE F0 X Y ;X,Y均为一个WORD,低字节在前高 字节在后。 发送的每组触摸屏数据之间的时间间隔可以用命令来控制, 命令详见“发送触摸屏数据时间间隔设置命令”。 例:选择触摸屏模式为单点触发不发送断码值(初始化为这种模式):1B 20 00 FF FF EE FF

基于plc的触摸屏总结

基于plc的触摸屏专业技能总结 专业:电子信息工程 学号:0414110111 姓名:王国发

这学期我们进行了有关PLC的科研技能训练,科研技能训练是大学中必不可少的一个环节,因为科研技能使培养学生的科研能力、创新意识和创新能力,通过科研技能训练,使学生掌握科学研究的过程和方法,能够初步掌握进行科学研究、科技论文写作的方法步骤,全面掌握进行科技活动必备的素质要求,激发学生的专业热情和学习兴趣,为学生撰写毕业论文、进行毕业设计奠定基础,并能培养学生的科研组织能力和专业知识综合运用能力,提高其与专业有关的综合素质,并且能提高创新能力! 一、触摸屏的现状与应用 PLC(Programmable Logical Controller)通常称为可编程逻辑控制器,是一种以微处理器为基础,综合了现代计算机技术、自动控制技术和通信技术发展起来的一种通用的工业自动控制装置,由于它拥有体积小、功能强、程序设计简单、维护方便等优点,特别是它适应恶劣工业环境的能力和它的高可靠性,使它的应用越来越广泛,已经被称为现代工业的三大支柱(即PLC、机器人和CAD/CAM)之一。 PLC基于电子计算机,但并不等同于计算机。普通计算机进行入出信息交换时,大多只考虑信息本身,信息入出的物理过程一般不考虑的。而PLC则要考虑信息入出的可靠性、实时性、以及信息的实际使用。特别要考虑怎样适应于工业环境,如便于安装便于门内外感应采集信号,便于维修和抗干扰等问题,入出信息变换及可靠地物理实现,可以说是PLC实现控制的两个基本点。PLC可以通过他的外设或通信接口与外界交换信息。其功能要比继电器控制装置多得多、强得多。PLC有丰富的指令系统,有各种各样的I/O接口、通信接口,有大容量的内存,有可靠的自身监控系统,因而具有以下基本功能: 1逻辑处理功能; 2数据运算功能; 3准确定时功能; 4高速计数功能; 5中断处理(可以实现各种内外中断)功能; 6程序与数据存储功能; 7联网通信功能; 8自检测、自诊断功能。 可以说,凡普通小型计算机能实现的功能,PLC几乎都可以做到。像 PLC这样,集丰富功能于一身,是别的电控制器所没有的,更是传统的继电器控制电路所无法比拟的。丰富的功能为PLC 的广泛应用提供了可能,同时,也为自动门行业的远程化、信息化、智能化创造了条件。 人机界面是在操作人员和机器设备之间做双向沟通的桥梁,用户可以自由的组合文字、按钮、图形、数字等处理或监控管理及应付随时可能变化信息的多功能显示屏幕。随着机械设备的飞速发展,以往的操作界面需由熟练的操作员才能操作,而且操作困难,无法提

显控(samkoon)HMI人机界面在空压机上运用

Samkoon HMI在空压机行业的应用 1、引言 随着国家节能减排政策的提出和工业自动化水平的提高,以及越来越多的厂家要求尽量降低设备的损耗,进而适当减少设备维护费用,如何合理的使用、维护设备已成为关键,而单纯的采用人工方式记录设备故障、设备使用时间,以及人工切换设备已经不能满足上述要求。本文以某煤矿空气压缩机远程监控系统项目为例,采用西门子s7-300系列PLC作为数据采集和控制单元,上位机用显控SKWorkshop进行画面及参数显示,从PLC到中控室工控机采用Ethernet协议进行通讯,现场使用触摸屏显示控制画面及参数,操作人员可在中控室或者现场触摸屏上发出控制命令。 2、原理分析 该项目利用空气压缩机给煤矿井下提供气体压力,推动气动设备的运行,要求管道内的压力维持在一定的范围内,最好不好过压或者欠压,以免造成能源的浪费或者现场设备无法使用。由PLC采集空气压缩机的参数,比如温度、压力、运行时间、故障等,上传到中控室上位机和现场触摸屏,并接受操作员发出的控制命令,再将相应的命令传给空压机,以实现控制功能,并做出相应的报警指示。 3、系统设计及实现 该系统主要由空气压缩机、PLC、I/O模块、现场触摸屏、上位机人机界面、网络通讯等部分组成,系统整体架构如图1所示。

3.1、I/O模块 本系统中需要控制空压机电源的接通与关断等,故需用到数字量输入模块,数字量输出模块,由于本系统采用西门子s7 300系列PLC,所以也需订购相应的300系列的DI,DO模块,型号分别有DI模块SM321(订货号为6ES7 321-1BH02-0AA0,DI16ⅹDC24V),DO模块SM322(订货号为6ES7 322-1BH01-0AA0,DO16ⅹDC24V/0.5A)。另外控制柜上安装有转换开关,可以选择在本地或者远程控制该电源的接通与否,该转换开关作为输入信号,接入PLC的DI模块。 3.2、PLC单元与网络通讯单元

TFT触摸屏使用说明

2一、.4寸TFT 触摸屏使用说明 要正确使用TFT 触摸屏,需要借助相应的单片机实验板,这里,以顶顶电子开发板DD-900实验开发板为例进行介绍,值得庆幸的是,DD-900上设有3V 电压输出端,因此,可以方便地为TFT 触摸屏供电。 TFT 触摸屏模块介绍 随着TFT 触摸屏价格的不断下降,其应用也越来越广泛,学习TFT 触摸屏现已成为一种时尚,以前,很多人只有在ARM 单片机中才能看到TFT 触摸屏的风采,现在,随着51单片机性能的提高,51单片机也能玩TFT 触摸屏了,这里,我们介绍的是一款2.4寸TFT 触摸屏模块,其正面与反面外形如图所示: 这款触摸屏模块主要具备如下特点: 1.2.4寸320*240 ,65K/262K 色; 2.屏带PCB 板, PCB 板设有2.4寸液晶屏、SD 卡座、触摸屏控制芯片ADS7843,通过40脚插针将屏、卡座和触摸芯片功能引脚,引脚间距为2.54mm ,采用杜邦线可十分方便地与单片机进行连接。PCB 引出脚排列及功能如图所示:

3.屏设置为8位,用户也可根据实际情况设置为16位。 4.控制IC 为ILI9325。 二、供电及连接说明 DD-900实验开发板采用的是5V 供电,因此,单片机应采用5V 单片机,如STC89C516RD+、STC12C5A60S2等,晶振采用30M ,注意TFT 要采用3V 供电,否则有可能烧屏,TFT 与单片机连接时可加限流电阻,电阻大小为470欧左右,也可以不加,但单片机不可设置为推挽模式,各引脚连接如下: TFT 触摸屏 DD-900实验开发板 说明 GND GND 屏与背光供电 VCC 3V LED+ 3V DB8~DB15 P00~P07 液晶屏部分 DB0~DB7 不连接(这里采用是8位方式,不用连接) RS P26 WR P25 RD P24 CS P27 RES P23 D_CLK P21 触摸控制部分 D_CS P20 D_DIN P22 D_BUSY P34 D_DOUT P33 D_Penirq (中断) P35 SD_OUT 根据程序进行定义 SD 卡座部分 (前两个实验,此部分未采用) SD_SCK 根据程序进行定义 SD_DIN 根据程序进行定义

Samkoon远程控制AKR触摸屏功能操作说明

S a m k o o n远程控制A K R触摸屏功能操作 说明 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

Samkoon远程控制(AK-R触摸屏)功能操作说明 一、概述 远程控制主要用于HMI与PLC的1:1串口连接,支持RS232/422/485,然后将单一设备引入工厂系统,实现物联网及广域 网的控制。其原理是将HMI串口连接到远程控制器的COM1,PLC 串口连接到远程控制器的COM2口,原理图如下: 二、远程PC(或手机APP)监控功能 1、打开“RemoteHMI”软件,双击“COM配置”,配置远程控制器(或 HMI选择远程客户端)参数,配置远程控制器连接的PLC及参 数,配置IP参数(客户端在HMI参数设置里配置),指定远程 控制器的IP,添加到指定的WIFI(如更换WIFI,需要在此指定 配置后下载) 2、新建画面,可添加连接设备或PLC的相关变量进行监控和控制操 作,如下图: 3、然后,找到RemoteHMI安装后的位置,点击打开“”文件,这样PC 才能通过服务器远程监控数据,如下图: 4、打开浏览器,输入:,如没有用户,请先注册用户再行登录,如 下图: 5、登录后,添加远程控制器(AK-HMI则是背后的SN序列号)的 SN,一般远程控制器正上部会贴有“RG+12位数字”,输入后,在 远程控制器上插入U盘,点击获取验证码,正常情况下,会听到 “滴”的一声,说明获取验证码成功,拔出U盘,插入电脑,打开

U盘里“”文件,提取验证码,输入到浏览器,确定添加设备成功, 如下图: 浏览器添加设备 提取U盘的验证码 6、下载对应的HMI组态工程项目到HMI,PLC程序到PLC,一切配 置成功,我们就可以通过PC打开“pcAppsys”或者手机APP打开 “HMI Client”远程监控PLC的数据了,如下图: 7、这样即可进入对应画面远程监控PLC数据。注意这儿的监控画面 是独立于HMI工程画面,对关键参数的监控,需要独立编程组 态。 8、VNC模式,是对HMI全部工程画面的监控,需要数据量、通信速 率较高,目前也在持续开发中。 三、通过远程控制器下载上传PLC程序及监视PLC 1、首先配置虚拟串口,需要安装“”软件,安装后,打开“Configure Virtual Serial Port Driver”快捷方式,如下图: Add pair 添加配置了一组虚拟串口,案例中添加了COM1,2 2、在RemoteHMI,新建开关控件,关联功能“下载PLC程序”,如下 图: 3、下载到远程控制器,然后运行“PcAppSys”,点击“下载PLC程 序”,配置COM口,这边选1,则PLC那边选择COM2,测试通 信这样就可以下载PLC程序了,如下图: 远程监控运行后,配置为COM1

相关文档
最新文档