在CSDN上看到一个问工控的,顺便说了两句,希望不要见笑(100)

zzutrain

New Member
Member
#1
原贴地址http://topic.csdn.net/u/20081222/07/3889545e-20c0-4578-9d74-7c22ca59d58c.html?seed=290899589我感觉语言不是问题,关键是设计思想。 工控主要就是通讯, 串口,网络,IO卡(电平或脉冲)等方式和单片机(PLC)或继电器打交道. 简单点说。 你需要知道串口怎么工作吧. 都有那些工作方式啊,rs232,rs485,rs422 差别啊 rs232 用什么DB9 的哪几脚,脚上的电压啊, 每个脚怎么定义的, 数据怎么通讯,波特率啊, 数据位啊,停止位啊,校验位啊。 另外串口多用位运算, 所以你要知道2进制, BCD, 压缩BCD码, 16进制, 10进制, 等怎么转换. 你要学习怎么读写串口啊,开始就从控件开始,然后你可以用createfile 开始自己写串口组件. 网络的话,你一定要知道计算机怎么组网啊,网络设备都包括哪些啊。什么路由啊,交换机啊,集线器啊, 568A,568B的压线方法, 什么环网,星网啊等。 网络都是用socket通讯, 那么你要知道怎么用socket通讯,从api的WSAStartup , socket 函数开始怎么去做啊。 通常这类程序需要通讯多个设备,你就需要学习多线程知识,windows事件知识。以及解决多线程数据冲突的临界变量知识, 大部分情况下,你采集的数据需要校验和保存,你又要学习文件知识,大文件时需要了解内存映像知识, 了解delphi指针的用法. 若保存数据库,需要学习数据库知识. 最基础的,要学会使用模拟或数字万用表 续: 若用电平或脉冲信号控制的话,那么你的程序基本上应该是通过IO卡直接和继电器或传感器打交道,那么你需要知道继电器的工作电压啊,电流,以及控制电压,电流啊.是用直流还是交流电源啊.若你自己做控制部分的话(仅电平或脉冲方式工作的设备) ,那么你需要知道如何去买电源啊, 各个设备的如何接线啊. 继电器那么多引脚, 你需要怎么用,是用常开,还是用常闭. 如何用继电器产生脉冲啊. 传感器有很多种啊, 采用NPN ,还是PNP 类型的,或者其它,你用对射,还是用发射,感应的东西是那种类型等,知道这些,你才能知道如何购买传感器啊. 传感器的信号, 你是用上升沿, 下降沿, 还是方波信号啊. 举个例子而言, 你要控制汽缸做剔除动作 , 那么你需要气源及以下设备, 电线,气管,计算机就不说了. 你需要买一块IO卡(这里使用研华的1761卡,8路输入,8路输出), 需要买一个电磁阀(假设 工作电压24V ,那么需要配一个24V的直流电源),看说明书接线(1761卡, 接常开输出) IO卡带开发包,和例程, 运行例程, 点闭合, 那么电源接通, 电磁阀工作, 汽缸就会运行. 点断开 ,那么电源断开, 电磁阀不吸合工作, 汽缸复位, 你点快点(程序中可设定时间), 那么就产生了剔除动作. 剔除需要有物体才进行,那么你需要配一个传感器, 检测传感器上升沿信号(有些情况下,要考虑干扰问题),然后再做剔除工作就完成了. 做工控,需要知道一些电路知识, 若对电路一窍不通,那么就不要做了, 仅知道和硬件如何通讯是不够的QQ: 295481
 

cancheung

New Member
Member
#5
写得比较全面!帮顶!电气方面的知识能掌握当然最好,其实略为了解也可以开发一般的上位机了。软硬件合作开发,明确接口最重要;通信接口(串口,TCP/IP,USB……)通信协议……