chenpingyg
机械是柱石,电气是灵魂.
级别: VIP会员
精华主题: 0
发帖数量: 1105 个
工控威望: 6705 点
下载积分: 100 分
在线时间: 603(小时)
注册时间: 2007-01-25
最后登录: 2017-04-03
查看chenpingyg的 主题 / 回贴
楼主  发表于: 2010-03-28 21:10
目前的所有PLC都是采用独立的CPU和I/O模块,PC机只是用于编写和下载程序以及监控,而PLC的CPU性能远不及PC机的速度快,价格却不在PC机之下。
介于以上因素,我个人认为使用PC机代替PLC非常有必要。
8051单片机有32个I/0引脚,分别为P0,P1,P2,P3。如果使用单片机做为终端站,PC为上位机,则只需要使上位机与终端站建立通讯关系即可实现简单
的逻辑控制。
1.通讯协议
  输入模块
  1位起始位
  9位数据位
   其中,前4位为站号,中4位为地址位,后1位为开关位,
      前4位由4位二进制组合表示站地址0-15共16个站.中4位由4位二进制组合表示位地址,后1位表示位的开或关
  1停止位
当输入模块的任何引脚检测到高电平时则向上位机发送一帧数据.例如:P0.0有低到高的电平跳变时,则想上位机发送0 0000 0001 1 1  表示方法:第1位表示开始
发送数据,第2-5位表示0号站,第6-9位表示P0.0  第10位表示位逻辑1  第11位表示发送结束.
第2-5位可以组合为16种变化,分别表示16个站,
第6-9位可以组合为16种变化,分别表示16个输入点.
这一帧数据表示0号站的P0.0有高电平输入.
      输出模块
   位起始位
  9位数据位
   其中,前4位为站号,中4位为地址位,后1位为开关位,
      前4位由4位二进制组合表示站地址0-15共16个站.中4位由4位二进制组合表示位地址,后1位表示位的开或关
  1停止位
   当需要使某个站的某个引脚产生高电平时则由上位机发送一帧数据.例如:需要使12号站的第10个引脚产生高电平则发送  01100 1010 1 1
2.采用此种方式工作需要在I/0模块中编写程序同时控制程序存在PC机上.所有的输入模块只需要将检测到的信号传输给上位机.
   所有的输出模块只需要接收上位机的信号,然后输出相应的引脚即可.
   所有的逻辑程序存在于PC机中.
3.每个模块上都使用P3.2-P3.5组成0-15的站号.
    0号站代码   00000*****1
    1号站代码   00001*****1
    2号站代码   00010*****1
    3号站代码   00011*****1
    4号站代码   00100*****1
    5号站代码   00101*****1
    6号站代码   00110*****1
    7号站代码   00111*****1
    8号站代码   01000*****1
    9号站代码   01001*****1
  10号站代码   01010*****1
  11号站代码   01011*****1
  12号站代码   01100*****1
  13号站代码   01101*****1
  14号站代码   01110*****1
  15号站代码   01111*****1
4.由于采用RS485通讯控制,因此模块最大距离可达1200米,可以把模块安装在一起,也可以分开安装,只需要把所有的模块用RS485
   通讯线连接起来即可.
5.每个模块可配置COM端口,这样,在模块里写入不同的程序就可实现不同的功能,即可做I/O模块,也可做单机PLC.升级空间很大,灵活配置.
我正在做这方面的研究,希望和志同道合的朋友一起讨论.谢谢!
联系方式  13158650515       QQ395894765           陈平
版权所有,未经授权不得转载!
                                                                                                                                                      
[ 此帖被chenpingyg在2010-03-28 23:31重新编辑 ]
自己的事情自己做.
ak47m16u571
苦海无边,柴米似鞭。欢乐无限,烦扰靠边。得逍遥处且逍遥
级别: 家园常客
精华主题: 0
发帖数量: 669 个
工控威望: 590 点
下载积分: 1580 分
在线时间: 630(小时)
注册时间: 2008-01-01
最后登录: 2024-11-22
查看ak47m16u571的 主题 / 回贴
1楼  发表于: 2010-03-29 09:03
这样的帖子我在单片机网站很多啊。。。
我还看到有人发起的plc开源项目,就是用单片机来仿FX plc,直接就可以用三菱的老版本的编程软件来编程,不过最后要将程序转换为hex文件下载进单片机。。。

单片机作485不难。。。
难就难在单片机的抗干扰电路。。。
qj_wgx
级别: 论坛先锋
精华主题: 0
发帖数量: 809 个
工控威望: 1044 点
下载积分: 2556 分
在线时间: 488(小时)
注册时间: 2007-08-28
最后登录: 2024-11-23
查看qj_wgx的 主题 / 回贴
2楼  发表于: 2010-03-29 21:02
这个东西有现成产品的   
具有通讯组网功能的IO模块组件都具有这个功能,呵呵
如果你能开发出来,就看你销售能力如何了,成本上你是占不了什么优势的了,   
taoyu001
级别: VIP会员

精华主题: 0
发帖数量: 935 个
工控威望: 13385 点
下载积分: 4818 分
在线时间: 294(小时)
注册时间: 2007-09-02
最后登录: 2024-11-01
查看taoyu001的 主题 / 回贴
3楼  发表于: 2010-04-21 22:10
楼主,8051单片机的扫描时间,485通讯速度以及延时,请注意???
除非开发适合PC总线的I/O模块才能真正发挥出PC CPU的速度,估计485的通讯速度应该是不行的。
芬兰KEMPPI(肯比)焊机交流群1775592,1775721!
KADAR卡达电脑瓦楞纸板机械交流群4824817!