在船舶共轨实验平台上使用Mbed LPC1768
用Mbed OS使能板 LPC1768控制共轨电磁阀控制器
项目问题
采用PLC控制器控制6个电磁阀动作,因为要用到高速PWM控制,由于是试验设备,PWM的控制形式无法确定,事实上对于船用共轨发动机的电磁阀开启和关断控制由于是国外的电磁阀,并没有人给我们提供现成的控制方式,需要摸索。
由于是一个试验设备,对模拟量的数据采集要达到1ms的采样速度,PLC无法用这样的速度采集,也希望采用研发的控制器实现数据采集。
基于上述原因,开发自主设计的具有知识产权的控制器。
Mbed OS使能控制器LPC1768
选择了一款NXP的产品:mbed LPC1768产品,主要技术性能指标如下:
特性
- NXP LPC1768 MCU
- High performance ARM® Cortex™-M3 Core
- 96MHz, 32KB RAM, 512KB FLASH
- Ethernet, USB Host/Device, 2xSPI, 2xI2C, 3xUART, CAN, 6xPWM, 6xADC, GPIO
- Prototyping form-factor
- 40-pin 0.1" pitch DIP package, 54x26mm
- 5V USB or 4.5-9V supply
- Built-in USB drag ‘n’ drop FLASH programmer
- mbed.org Developer Website
- Lightweight Online Compiler
- High level C/C++ SDK
- Cookbook of published libraries and projects
特殊性在于使用了mbed.org网站的在线开发工具,购买板子就可以使用这个网站并开发自己的具有知识产权的程序。
Mbed OS是一个操作系统,在这个操作系统上对硬件层进行了抽象,开发人员在没有硬件详细信息的基础上开发自己的应用系统可以专注自己的应用。开发高级应用产品。接线图如下:
在图片上注意到使用了以太网模块,用这个以太网和PLC控制器进行通讯,实现系统的互联。
应用软件
采用了mbed.org在线开发系统,导入EthernetNetIf库函数实现以太网通讯,有人说速度慢,但我们应用感觉速度还可以,当试验完成时发送1028个字节的速度在1s以内。
系统中使用了6路PWM输出控制6个共轨电磁阀,控制电磁阀的开启和关闭。主要的模拟量采集也是采用了LPC1768,数据更新时间是200 μs。
其他的模拟量数据采集采用了SPI通讯方式,6路模拟量数据采集时间为400 μs以内完成。实现了1ms模拟量更新。
系统实物
下面是安装在控制柜中的控制器实物。
总结
采用Mbed OS开发控制器可以专注应用,减少对控制器硬件的了解。可以快速开发样机产品。