开源!一个简单的软PLC

软PLC示例代码,包括windows上位机、windows runtime、stm32 runtime。

由于这个是n年前用于研究软plc,如今也没有维护了,所以代码和功能方面不是很完善,需要自己捣鼓,可以下载Relase看看效果。文章末尾会给出项目地址。

梯形图的基本编译原理可以看我的博文:梯形图显示到编译--软PLC的实现_梯形图编译原理-CSDN博客

编译

上位机和仿真

纯VS工程,使用VS2010打开sPLC.sln工程文件,高版本的应该也能打开,包含了上位机和仿真。

下位机

STM32的工程在project/stm32目录下,使用keil导入即可。

运行

上位机和仿真运行方法

  • libx.dll 一些辅助方法的库
  • plcc.exe 编译器
  • plccore.dll plc runtime
  • plcEditor.exe 丑陋的梯形图编辑器
  • PLCSimulation.exe plc 在windows下的仿真器

上位机

plcEditor.exe是梯形图编辑器,只能简单打开保存,没有多余操作。

  1. 新建文档

通过【文件】-【新建】来新建文档

  1. 设置属性

所有都要填,工程名称随便起,工程路径选一个存在的路径,步数填个100,列数填11。步数和列数可以自己小心调整。 设置好了点确定即可。

  1. 编辑梯形图

传教好好双击工程树的main文档打开编辑main.lad。 首先要在最后一行右击弹出菜单选择‘插入新行’,才能编辑。插入多点行再编辑会方便点。

  1. 保存梯形图

只能点击保存图标,不要去点转换啥的,时间太久,我也不知有有没有用。点保存就会在工程目录下生成main.lad,这个文件就可以下载到plc了。

仿真

  • 打开运行文件

运行PLCSimulation.exe,点击加载程序按钮,弹出对话框,选择刚刚的工程目录,文件类型选*.lad,选择生成的main.lad文件,点击打开即可。PS:可以选择*.wpg来打开三菱工程运行哦,不过应该只支持Fx1N、2N这些上古的型号的工程。

release文件

  • 运行lad

打开运行文件后就直接加载梯形图,并显示出来,可以通过双击触点来切换开关状态,对应的逻辑也会刷新。比如双击M100触点导通,M200,M222都会导通,再双击M100触点断开,这时候M200断开,M222还是导通。

release文件

  • 单步调试

支持单步调试,首先点击‘停止’按钮,‘单步’按钮会使能,这时候就能点击单步,右下角也会显示当前运行到哪一步。通过单步可以看到梯形图的详细的运行流程

在设备上运行plc

plccore是跨平台的,成功在stm32上运行,有需要的自己折腾下哈。

结语

这是一个很简单的软plc,实现了基础的运行逻辑,可以对梯形图的翻译和运行有初步的了解,要产品化还需要很多工作。希望能给想做PLC的开发人员提供思路,消除技术壁垒,更多的人能了解PLC,并能实现自己的PLC。

广而告之

很庆幸,软PLC这个项目已经在公司落地,当然是全新的项目。新的是符合IEC标准的软PLC平台,已经发布并开始出货。支持完整的梯形图和ST编程,完全自主化,有兴趣的也可以聊聊工作的事情,欢迎高手加入。

 开源项目地址:https://github.com/vincentchina/SPLC

  • 28
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值