请大家使用我开发的软件PLC软件后,看我开发的软件PLC是否有继续开发下去的必要 点击:0 | 回复:674



gongkongedit

    
  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2003-09-19 21:01:00
楼主
“硬PLC”一般指西门子、三菱等公司的开发的PLC。目前,由于嵌入式PC开始逐渐在工控领域得到应用,因此国外有一些公司开始开发基于PC的PLC产品,我们称之为软PLC。国外的软PLC已经有一些成熟的产品,例如SoftPLC公司开发的软PLC,现在国内也有人开始在软PLC上做一些研发。 我由于一个偶然的机会,开始对软PLC产生兴趣,做了一些相关的研发工作,并产生了一个很不定型的产品。由于我现在还是学生,对工控领域不了解,再加上开发软PLC的资料很有限(我开发软件PLC基本上只有三菱的《FX系列可编程控制器》作为软件开发的参考),因此我想在这里谈谈我在软件PLC方面的工作,恳请大家指点,看是否软件PLC还有继续开发下去的必要。 我开发的软件PLC主要分为两部分,是这样工作的:下位机采用DOS操作系统,运行“软PLC服务器”。“软PLC服务器”是用C语言开发的程序,它的主要功能是:通过以太网接收PLC指令,并解释执行PLC指令。在“软PLC服务器”解释执行PLC指令的过程中,可以通过以太网接收新的PLC指令,然后解释执行新的PLC指令。上位机采用Windows操作系统,运行“梯形图集成编辑开发环境”软件。“梯形图集成编辑开发环境”软件是我用VC开发的软件,主要功能是:把梯形图转换成PLC指令,并通过网络把PLC指令传给下位机的“软PLC服务器”。 我开发的软件PLC是和三菱FX2N系列的PLC兼容的。由于开发时间有限,目前只能对18个基本逻辑指令(LD、LDI、OR、ORI、AND、ANI、ORB、ANB、OUT、NOP、SET、RST、PLS、PLF、MPS、MRD、MPP、 END)和两个步进顺控指令(STL、RET)进行解释。 在“软PLC服务器”中,我解释PLC指令是采用“读取一条指令就解释一条指令”这种模式进行的,因此一条PLC指令解释的速度是比较慢的,如果下位机采用PC104板(CPU为386,主频40M),解释一条指令平均要45微妙。不过,我已经想到了一种新的算法来提高这个速度。假如这种算法有效的话,解释一条指令花费的时间会大大缩短,最多需要5微妙。由于软件PLC采用嵌入式PC机,因此“软PLC服务器”所能解释执行的PLC指令的数目只受下位机内存和硬盘容量大小的限制。其实,“软PLC服务器”是用C语言开发的,因此下位机也可以用单片机来实现,不过这个时候下位机和上位机的通信就要用串口或者并口来实现了。 说实话,开发软件PLC是很困难的,很累。目前我面临着毕业的压力,所以我很犹疑是否继续把这个研发工作继续下去。正如前面所说,由于我还在读书,对工控领域不了解,开发软件PLC的资料很少,我不能确定我开发的软件PLC有继续开发的价值。所以,我想把我开发的在上位机运行的软件“梯形图集成编辑开发环境”发布到网上,恳请您提宝贵的意见。假如您对这个软件感兴趣,我会把这个软件通过电子邮件寄给你。和“梯形图集成编辑开发环境”一起发给您的有“梯形图集成编辑开发环境”简要使用说明,假如您对三菱的FX2N指令很熟悉,那么使用这个软件应该比较容易。 “梯形图集成编辑开发环境”中肯定还隐藏了很多的Bug,有很多的功能需要完善,在您使用这个软件的过程中,假如您发现把梯形图转换成PLC指令出现了错误,那么请您把出现错误的梯形图文件发给我,谢谢!!! 开发“梯形图集成编辑开发环境”的时候,有很多PLC的术语我表达的不规范,假如您愿意,请您指点。 您如果要使用“梯形图集成编辑开发环境”,请您先安装VC,因为这个软件使用了MFC的动态连接库。 您的意见和建议将决定这个软件的命运!



泡泡

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 5回
  • 年度积分:0
  • 历史总积分:61
  • 注册:2002年9月24日
发表于:2002-09-26 20:35:00
1楼
很巧,我也有开发软PLC的打算,但是似乎现在竞争已经很激烈了,有点打退堂鼓。你可以参考一下一个IEC1163的标准,其中描述了几种编程语言,包括汇编(IL),梯形图(LAD),FBD,SFC,STL等几个。现在有好几家公司都完成了这些语言的设计环境,而且有一家德国公司infotech(中文名好像叫"一方梯队")使用了公开源码的授权方式,任何硬件厂商都可以都得这个环境,针对自己的系统加以改进。所以你的梯形图的编辑器可能不是非常有竞争力(不过你应该参考一下该标准,它统一了一些梯形图的模块定义)。然而你用网络下载新的plc指令的设计还是很好的,很欣赏。 如果能够制作出低成本的可靠的pcPLC硬件系统,觉得还是很有前途的。 我愿意看看你的梯形图编辑器,我的邮箱novalet@sina.com。有什么想法欢迎交流。

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2002-09-27 08:58:00
2楼
泡泡先生:我在深圳做课题快两年了,最近要回学校。在深圳的这段时间,我感觉到中国的工控市场的确很大;同时,单靠几个人的力量,你不可能开发出能够和西门子、三菱PLC相抗衡的产品。所以,对软件PLC的市场定位是很重要的。我所在的公司目前主推的一种产品,我们研发人员私下都认为不怎么样,但是针对性很强,找到了市场的切入点,因此还是赚钱。所以我个人认为:我开发的软件PLC的市场针对性,在很大程度上确定了它的命运!我开发的软件PLC目前只能对数字信号进行处理,其实数字信号的处理覆盖了工控领域的80%。假如有一天我有机会推软件PLC的话,低成本和低端应用领域肯定是我重点考虑的地方。不知您认为我说的是否有道理

泡泡

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 5回
  • 年度积分:0
  • 历史总积分:61
  • 注册:2002年9月24日
发表于:2002-09-27 09:32:00
3楼
很好的理想啊!我建议你可以看看www.control.com上关于linuxPLC的讨论,他们试图作出一个免费的软件plc,但是还是处于比较原始的阶段。他们也试图作一个open的硬件plc,就是各个部件都是定义好的接口,你可以生产任一部件,并能够拼装起来。 我觉得你的数字信号处理软件,如果能够达到simulink的水平,就能够大受欢迎。 你是研究生吗?我研究生刚毕业,不过现在学的是遥感,做数字图像处理的,现在继续在科学院工作,对本科的自控还是很有兴趣。

泡泡

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 5回
  • 年度积分:0
  • 历史总积分:61
  • 注册:2002年9月24日
发表于:2002-09-27 09:49:00
4楼
呵呵,看了您的程序了,挺好的! 不过还没有debug功能是一个不足。另外滚动条似乎没有处理好。 对三菱的设备我不清楚,所以也说不上什么。不过你的数字信号处理的成分反映在哪里呢?

Mike_Sh

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 18回
  • 年度积分:0
  • 历史总积分:43
  • 注册:2002年8月28日
发表于:2002-09-27 12:13:00
5楼
了不起!不知道你开发软PLC是不是想开发一个成型的产品,如果是,确实应该向beyondfly所说,找到合适的市场切入点才行。否则,困难会很多。我是作plc应用的,入行不是很久。据我所知,siemens已经有很成型的pcPLC,我曾经在网上见过的。还有北京一家工控软件公司最近也要推出自己的软PLC。我个人的想法,你做成上位机、下位机形式是否不太利于推广。能否做在一个机器上,采用IPC更好,OS最好用NT架构,这样运行会更稳定。 很佩服你的勇气和能力!但愿能欣赏到你的成果!如果小于4M给我发一份好!谢谢!e-mail:sjr9239◎21cn。com

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2002-09-27 12:18:00
6楼
因为这个软件开发的时间短,很多地方要改进,也有很多功能我很想加上去,但就是没有时间。其实我打算做成象Visual C++那样的调试环境,同时模拟和仿真的功能都要加上去才行。 另外,我所说的数字信号处理,只是针对数字量信号的处理,例如数字IO的输入、输出处理。 我也是研究生,读博士一年了。我现在在深圳,不过马上就要回武汉了。

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2002-09-29 12:54:00
7楼
要做一个真正的产品好难拉!

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2002-09-29 22:14:00
8楼
我要一份!!jiangz@lisheng-xm.com QQ109835607

冰九

  • 精华:0帖
  • 求助:2帖
  • 帖子:18帖 | 19回
  • 年度积分:0
  • 历史总积分:44
  • 注册:2007年9月25日
发表于:2002-09-30 08:35:00
9楼
给我也来一份,好么 e-mail:xiaoliang-622@163.net

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2002-09-30 08:50:00
10楼
来一份! email:yl600@163.com

weiyunhong

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 4回
  • 年度积分:0
  • 历史总积分:16
  • 注册:2002年9月29日
发表于:2002-09-30 09:39:00
11楼
我对梯形图集成编辑开发环境感兴趣,能否给我MAIL份程序。 我的MAIL:kejiaren@vip.sina.com.

YUXINGIBO

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:13
  • 注册:2002年9月30日
发表于:2002-09-30 09:44:00
12楼
来一份。 email:yuxingbo@sina.com

ahlljj

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2001年3月04日
发表于:2002-09-30 10:23:00
13楼
来一份: email:anhuiwhljj@ah163.com

hello

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 13回
  • 年度积分:0
  • 历史总积分:41
  • 注册:2000年10月16日
发表于:2002-09-30 11:41:00
14楼
来一份:   email:ywqmaster@163.net

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2002-09-30 11:52:00
15楼
给我也发一份,欣赏您的杰作,并帮您找问题。 zhangyang1974@163.com

水手

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:54
  • 注册:2002年8月07日
发表于:2002-09-30 12:27:00
16楼
to beyondfly: 我先前用过FX2N,现在专门用西门子S7-400。我对你的软PLC很感兴趣,能否MAIL给我。zhjj75@sina.com.

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2002-09-30 14:15:00
17楼
感谢诸位大侠给我一个机会,使软件PLC的开发得到诸位的指导。

littlelord

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:4
  • 注册:2002年6月21日
发表于:2002-09-30 14:52:00
18楼
能否给我发一份:yg2kong@sina.com

littlelord

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:4
  • 注册:2002年6月21日
发表于:2002-09-30 14:58:00
19楼
能否介绍一下你下位机的指令实现算法?

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14399帖 | 54471回
  • 年度积分:0
  • 历史总积分:579
  • 注册:2008年9月08日
发表于:2002-09-30 16:16:00
20楼
To littlelord: 下位机的指令实现算法比较复杂,不是那么几句话就可以说明白的。要正确解释PLC指令,我认为最主要的是正确解释并联分支块。并联分支块很复杂,因为并联分支块中可能还包括并联分支块。假如你想正确解释并联分支块,我建议你把几种最常用的并联分支块画出来,然后仔细分析隐藏在并列分支块中的规律。为了正确解释并联分支块,我采用的堆栈来处理。梯形图和电路图是很相似的,把并联分支块和电路图中电流的流动结合起来,采用堆栈来处理,就可以正确解释并联分支块,就可以实现PLC指令的解释。

相关主题

官方公众号

智造工程师
首页 上一页 1 2 3 4 5 6 7 8 9 10 ... 下一页 尾页