开发个总线阀岛,这么难
本帖最后由 TECHWELL 于 2024-11-21 16:55 编辑开发个总线阀岛,这么难
2024年的4月21日,在朋友的茶桌上,我忽然灵机一动,想到了一个关于阀岛的小点子。花3个月的时间撰写了专利《一种无需地址码的电磁阀自由级联控制方法》,期间,同步地画SCH\PCB图、写程序,对“茶桌点子“加以验证。7月中旬提交专利,9月初得以公开。10月下旬,专利转化为产品,在某宝公开上线(命名为DvLink总线阀岛),随即在上海气动展会上展出。
只顾着努力开发产品,一路走来,不觉得半年有多了!今日得空闲,撰文总结、记录一下。
图1. 专利受理通知书
说实话,这个专利方案,技术点子不大,产品也很小。其亮点在于大胆地改进电磁阀的线圈,在线圈中嵌入MCU,利用“转发截留、数据”策略,摆脱了通讯地址(站号)的束缚,实现了电磁阀之间,无需地址编码,自由地级联(串联)控制。这极大地方便工业现场应用,比如节省线材、人工、上位机输出点,再比如灵活安装。
图2. 常用的4V210电磁阀
图3. 最初的样板PCB(基于灵动微公司的MM32F0040B1)
图4. 给电磁阀线圈嵌入PCB、单片机,再配一个小盖子
可是,在产品化(专利转化)的过程中,也算是历尽艰辛。绘制SCH、PCB图,数易其稿;修改模具结构、外形,及至细化标识文本。
更难的是,实现通讯协议。目前仅仅实现RS485 MODBUS RTU + CANOPEN DS401;因为之前曾有应用经验,编写协议程序,倒也不难,难的是测试、验证其兼容性和可靠性。
图5. 用3条导线,把线圈级联成串,其中电源线是直通的,通讯线则不然
图6. 基于GD32F303RC的通讯协议转换;为可靠起见,配置了隔离DCDC
图7.通讯协议盒的PCB图
图8. 给协议控制板,定制一个盒子,让它刚好占用一位4V210阀的位宽
图9. “万国牌”的阀,被级联成阀岛,命名为DvLink阀岛
经历了这么多,还没完。用户时不时的提出新的要求,比如增加开关量输入,只好照办,如下图。
图10. 32位的开关量扩展模块,配套阀岛。支持485 Modbus+Canopen
图11.再DIY一个专用的线圈测试工装
图12.大杂烩。为方便测试和演示,自制了一个触摸屏(基于GD32F470+emwin)
图12.在某宝、某东,开卖!店小二强调“专利产品 不容抄袭”
产品公开时间很短,用户越来越多,要求也越来越多,要求etherCAT、EtherNetTCP、CCLINK、Profinet、IP67、输入信号、脉冲阀…真是应接不暇啊!!!
可我们不能抱怨这些要求,因为,都有它的合理性。
图13.自带32路输入开关量的版本(规划中…)
只好,规划一款自带32路输入开关量的版本,又得开模具…SCH\PCB….
欣喜、困惑交织着,努力与失落并在着。只能再次、再一次地加班…
可是,etherCAT、CCLINK、Profinet这些协议,我一己之力,做不到啊!
谁家有这些协议的技术能力?请帮帮我,加入我们!甚至,我只想做线圈相关的技术与业务;这些协议开放给同行来做…
寻求支持etherCAT、EtherNetTCP、CCLINK、Profinet通讯协议
这协议听起来有点像WS2812的那种思路? 1、不需要地址码的,电磁阀自由级联控制方法,很简单,我有更好的方法。
2、EtherCAT ,Profinet,在我这里,都是现成的。
3.我的手机号,也是微型号:138 9848 6838.
4、我的QQ号码: 390350125.
希望能够帮到你,谢谢!
另外:1个MCU+EtherCAT,或者是Profinet,就可以控制很多路电磁阀(例如:32路);更省钱,速度更快,100Mbit/s或者10Mbit/s. 我做为工控行业的从业者,猜一下,楼主现在这个项目应该现金流还是负的 xfcjava2 发表于 2024-11-21 19:57
1、不需要地址码的,电磁阀自由级联控制方法,很简单,我有更好的方法。
2、EtherCAT ,Profinet,在我这里, ...
线下向你请教. xzy568 发表于 2024-11-22 08:48
我做为工控行业的从业者,猜一下,楼主现在这个项目应该现金流还是负的 ...
是的,没错.
可是,我看到了势头,还不错. 本帖最后由 dukedz 于 2024-11-22 12:46 编辑
普通的串口手拉手转发不就是干这事的么,这种专利的价值可能不大,很难正式通过,也很容易被无效
另外想说的是,这种手拉手转发实时性比经典 485 总线要差,因为软件转发要花时间,各节点很难同时执行命令
而且你这个协议是单向传输,发生故障主机都不知道
建议用串口搞一个简化版 ethercat 方式的手拉手传输数据,最后数据回到主机,一个大数据包要有包头和包尾crc校验,每经手一个节点,该节点从数据包相应位置取下自己的数据,再把回复替换上去,数据包转发前后保持大小不变,每个节点接收完crc校验无误后才执行动作
可以每收一个字节就直接转发或替换转发出去,也可以用 fpga 实现按位转发以降低延迟,最后做成专用 asic 芯片(还要加延迟补偿)
cdbus 是用串口实现 can 的功能,让串口支持仲裁,最后流片做成 asic 专用芯片,ethercat 简化版的串口协议和芯片楼主可以考虑一下,让我们共同 Make 串口 Great Again:
https://bbs.21ic.com/icview-3350404-1-1.html TECHWELL 发表于 2024-11-22 11:26
是的,没错.
可是,我看到了势头,还不错.
没事,坚持10年8年,你总会放弃的
建议先到工控行业工作一段时间,弄清楚需求,再投钱投时间比较好
如果只是爱好,不考虑挣钱,请随意 dukedz 发表于 2024-11-22 12:40
普通的串口手拉手转发不就是干这事的么,这种专利的价值可能不大,很难正式通过,也很容易被无效
另外想说 ...
这种手拉手方式万一某个节点坏了,是不是后面的其他节点都通讯不了 英雄本色2022 发表于 2024-11-22 16:54
这种手拉手方式万一某个节点坏了,是不是后面的其他节点都通讯不了
是的,不过也没差,非手拉手的 can 485 总线,一个节点万一坏了短路了,整条线也都通讯不了
或者传统 can 485,每个节点两个座子方便接线,两个座子直通,一个座子松了也是后面都不通了
要求高的场合,加多一条线做备份才是正解 英雄本色2022 发表于 2024-11-22 16:54
这种手拉手方式万一某个节点坏了,是不是后面的其他节点都通讯不了
是的.通讯数据是依次转发的,其中一节点死机的话,后面的节点就没得玩了.
大多数的通讯方案,都有类似的问题.
比如CAN线开路\短路了;
比如485线开路\短路了;
... 本帖最后由 TECHWELL 于 2024-11-22 19:20 编辑
xzy568 发表于 2024-11-22 13:27
没事,坚持10年8年,你总会放弃的
建议先到工控行业工作一段时间,弄清楚需求,再投钱投时间比较好
如果 ...
有道理.
不过,我在工控行业,做了很多年,大约20年吧.
一直是做板卡\嵌入式.比如这个就是我的产品:
总结2021:基于STM32F429+Emwin的彩灯机控制系统K919 - STM32/STM8单片机论坛 - ST MCU意法半导体官方技术支持论坛 - 21ic电子技术开**坛
许多自动化公司和专业团队具备这些协议技术能力,建议寻求合作或外包给有经验的服务商
页:
[1]