做了电子工控有几个年头了,在这几年里自己是从小做起,慢慢积累了一些经验,刚开始是做小工程小项目一个人独立调试下来后,心里有了一种收获果实的成就感。后来做的工程越来越多,渐渐地自己就可以独立担当项目了。在几年的工作当中,将自己遇见的问题以及是怎么解决的分享一下。
1、怎么将仪表数值人性化的展示出来
这个功能是:当仪表所检测的值超出报警值时,由CP340将模拟量模块采集过来的仪表实时数值发送给终端设备,再由终端设备发送短信给客户,及时通知客户采取对应措施,防止事故发生。
这个项目一直困扰我的是怎么通过编程发送一条完整的信息给客户,比如发送一条信息为:出水管道压力值过大,值为2.56Pa,其中的2.56为实际值。通过研究测试,我调用了IEC功能块中的FC30,块功能是将实数转换为字符串,用FC30还会出现一个问题是,在转换的字符串中,测量值中的小数点会丢失,这就需要测量值在转换前做处理,判断测量值是几分位,再通过传送指令将它补齐,然后触发FB3,将这一条完整的信息发给终端,再由终端发送短信给客户。
2、模拟量是两线制还是四线制
在调试的过程中,遇到了模拟量模块到底是设置两线制还是四线制的问题,通过调试,彻底弄清楚了。测量仪表如果自供电源,说明它会输出4~20mA,那么模块设置成四线制;如果不带自供电源,那么就需要模块设置成两线制,供电源给测量仪表。在调节几线制时,软件与模块硬件都要调-节。
3、CP340通讯不上怎么办
在这个项目中有3只仪表走MODBUS通讯。在程序中,模块与仪表之间走的是ASCII协议,通过循环读取3只仪表数据来实现,测试时,数据读取不过来,CP340模块上的发送、接收指示灯都会循环闪亮,但程序中DB接收块中就是没有数据进来,通过查找发现接收DB块的长度太短了,改长就好了,其长度是根据FB2发送的数据长度LEN决定的。
好了,以上就是德力西电气这些年做工控行业的经验,给大家分享出来,希望对大家有帮助,你们也可以分享你们的经验给我。