上传者: 38640072
|
上传时间: 2025-09-25 11:29:16
|
文件大小: 199KB
|
文件类型: PDF
msOS设计的本意是为电子类设备及PLC设计的,一开始想着仿造西门子的S7-300来设计一套基于CAN通讯的分布式PLC,然而当设计了几个硬件模块之后就发现,这个需求定义超出了我的个人能力,自己的综合知识还没有上到这个层面,所以开始退而求其次,仿照普通的PLC,结合华禹工控及俊知机械的需求设计了一款简单的嵌入式PLC,取名为msPLC-Demo。
嵌入式微系统msOS的设计初衷是为了满足电子设备和PLC(可编程逻辑控制器)的需要,最初的目标是创建一个类似西门子S7-300的分布式PLC系统,利用CAN通信协议进行通信。然而,随着硬件模块的设计,作者意识到这个任务超出了其个人的技术能力范围。因此,他转向开发一个简化版的嵌入式PLC,即msPLC-Demo,此项目是根据华禹工控和俊知机械的具体需求定制的。
在msOS的开发过程中,msPLC-Demo起到了重要的作用,它经历了三个版本的迭代和完善,帮助作者更深入地理解了工业设计的需求和PLC的工作原理。通过msPLC-Demo,作者简化了PLC的接口设计,采用共阳输入光耦隔离和中功率共阴输出,可以直接驱动继电器类驱动器,提高了系统的易用性。此外,msPLC-Demo还被应用于多个项目,如红外激光测温仪校准台和高频感应加热设备的控制器,其中涉及到的PID算法被封装成面向对象的库,方便温度控制。
在机械自动化领域,步进电机控制是一个常见需求。因此,作者基于德国TMC262步进控制器开发了步进电机驱动库,增强了msOS的功能。在msOS的开发过程中,作者通过QQ群和博客平台吸引了一群感兴趣的网友,特别是原Mcu51的“实用单片机系统”MS3的用户,他们对msOS表现出极大的兴趣,并积极参与到代码的贡献和移植工作中,将msOS推广到msp430和AVR平台上。
为了进一步降低msPLC的使用门槛,作者计划开发一个低成本的版本,但由于黑白字库屏成本较高,转而设计了一个PC端的上位机界面——msMenu,采用C#语言开发,模拟LCD屏并提供串口等常用功能。这个项目得到了群友"Claude"和"南方的风"的帮助,形成了一套统一开发风格的C#模板。
msOS的成功开发不仅统一了公司内部的嵌入式设备开发,提高了软件质量和硬件人员的编程能力,还降低了软件开发成本。同时,通过群内招聘的方式,公司能够吸引到熟悉msOS的人才,提高了团队稳定性和效率。例如,有多年华为工作经验的软件专家"蓝色雪狐"加入了团队,负责msOS的后续应用和推广,包括火花放电加工设备和机械自动化控制设备的开发。
未来,作者计划深入研究FPGA技术,设计精准控制芯片,初步命名为msFPGA,并期望能够开源共享。整个msOS的发展历程充满了社区协作和技术探索,体现了开源精神和技术创新的力量。