2024年6月7日发(作者:)
电子技术与软件工程
Electronic Technology & Software Engineering
自动化控制
Automatic Control
基于
Java
界面控制工业设备的设计与实施
董海桃
(山西机电职业技术学院山西省长治市 046011 )
摘要:本文以开关灯的控制为例子,具体阐述如何使用
Java
语言的
IDEA
集成开发环境完成界面下串口控制开关灯功能。在
Java
界面控制工业设备中,对于控制的模块设计采用友好的图形用户界面,通过
SerialPortManage
串口数据传输,在图形用户界面实时控制
到仿真系统的设备上,完成相关操作,便于对实际环境远程智能控制。
关键词:仿真设备;物联网;界面;串口;布局
智能控制工业设备幵发目标是为满足工业设备的智能测控,通
过无线传感网络实现温湿度数据的读取与显示,通过人体传感器、
烟雾传感器、红外对射传感器监测是否有人在工业现场、是否有煤
气泄漏的危险发生以及是否有人通过门窗入侵,从而控制相应的灯、
报警灯开启,风扇开停等操作。文章以开关灯的控制为例子,具体
阐述如何使用
Java
语言的
IDEA
集成开发环境完成界面下串口控制
开关灯功能。
1物联网仿真设备的连接
物联网仿真设备上连接灯泡如图1所示。具体的连接方法是,
在物联网行业实训仿真设备上:设备
PC
连接220
V
电源,数据采
集设备
adam
4150通过继电器连接24
V
电源,设备灯泡通过继电器
连接12
V
电源,数据釆集设备4150通过串口工具485-232和
PC
端的
COM
口相连。设置
PC
端的配置为如图2所示:
COM
端口号
波特率为9600,虚拟串口为
COM
200。通过串口工具测试连接正
确,端口数据“01,05,00,11,
FF
,00,
DC
,3
F
”测试可以开灯,端口数据
“ 01,05,00,11,00,00,9
D,CF
” 可以实现关灯。
2利用
Java
进行界面设计
为了能够自如的控制开灯和关灯操作,用户希望通过电脑或者
手机的界面操作灯泡的开和关,使用
Java
语言的
IDEA
集成开发环
境为例介绍窗口界面的设计,
IDEA
全称
IntelliJ
IDEA
,是
Java
编
程语言开发的集成环境。
IntelliJ
在业界被公认为最好的
Java
开发
工具。窗口的设计包含可以让用户识别窗口的标题、窗口的大小和
能控制开灯关灯的两个按钮控件对象。由于构造函数在创建窗口类
对象的时候自动调用,所以以上的这些功能可以在窗口类的构造函
数内完成。其程序为:
public
IntelligentTerm
(){
setLayout(new
FlowLayout
〇);
JButton
onLamp=new
JButton
("开灯”);
add
(
onLamp
);
JButton
offLamp=new
JButton
("关灯");
add
(
offLamp
);
this
.
setTitle
(” 智能开关灯");
this
.
setSize
(300,300);
setVisible
(
true
);}
}
图1.•物联网仿真设备上连接灯泡
薛□号触•口
挪率口
COM
9600
COM
200
USB
1
9600
图2:
PC
端的配置
程序中创建了两个按钮分别是“开灯”
和“关灯”,而且在
初始化函数里调用
add
函数将两个按钮加入到窗体中,程序的执行
的界面效果如图3所示。或许,你现在已经发现了问题,如果没有
setLayout(new
FlowLayout
〇);这一行语句,后面的界面元素将前面
的界面元素覆盖了,只能看到最后一个界面元素如图4所示。那么
setLayout(new
FlowLayout
())是什么呢?
在
Swing
编程中使用布局管理器能够非常有效地对窗口或者其
它容器中的组件进行有条理并且美观的摆放。布局管理器也是有很
多种的,包括流布局、边框布局、网格布局、和空布局等,其中流
布局
FlowLayom
是是依照组件的添加顺序依次将组件添加到容器
里,是最简单的布局。
3功能的实现一事件代码的编写
当界面完成的界面的设置后,单击“开灯”按钮,在仿真系统
里灯并没有完成相应的操作,即仿真系统里的灯没有打幵,这是因
123
自动化控制
Automatic Control
⑷
智陡
幵矢灯
一
□
X
开灯 关灯
图3:程序界面效果图
图4:不设置布局效果图
0
(明
bi
a
,
〇*似
*龙
(
巳开印
UlOBSB
i
g
g
g
图5:单击开灯,仿真灯亮
为没有编写按钮的事件代码,这个按钮事件的功能是单击按钮后仿
真系统中灯能打开和关闭,完成相应功能。
首先需要搭建框架,给”
onLamp
”和“
offLamp
”按钮和添加
事件代码。在构造方法中给按钮
cmLamp
添加代码,单击按钮的事
件是
addActionListener
()方法,响应的事件是:
ActionListener
(),选
定后,事件需要实现虚拟方法
actionPerformed
(),在虚拟方法内
添加通过发送的的事件便可。
124
电子技术与软件工程
Electronic Technology & Software Engineering
通过串口工具
SerialPortManager
的方法
sendToPort
发送数
据到仿真系统,该函数的两个参数分别是这样的,参数1首先
需要打通串口,将
OpenPort
的值设置为:
SerialPortManager
.
openPort
(
nCOM
200
n
,9600);也就是连接
PC
的端口。参数2根据确
定是打开操作或者是关闭操作的16进制数据组。特别要注意对于
窗口管理器发送串口数据的时候,可能会产生异常,所以要将此命
令放置在
try
-
catch
里。具体代码如下:
onLamp
.
addActionListener(new
ActionListener
() {
@Override
public
void
actionPerformed(ActionEvent
e
) {
try
{
SerialPortManager
.
sendToPort
(
Data
.
OpenPort
,
Data
.
DO
1
OPEN
);
}
catch
(Exception
el
) {
el
.
printStackTrace
();
}
}
});
offLamp
.
addActionListener(new
ActionListener
() {
@Override
public
void
actionPerformed(ActionEvent
e
) {
try
{
SerialPortManager
.
sendToPort
(
Data
.
Open
Port
,
Data
.
DOICLOSE
);
}
catch
(Exception
el
) {
el
.
printStackTrace
();
}
i
});
最后以上程序完成以后,在仿真系统打开模拟实验,运行程序,
验证程序的运行结果,如图5所示:当单机窗口里开灯按钮的时候,
仿真系统灯点亮。当单机窗口里关灯按钮的时候,仿真系统灯熄灭。
4结论
文章只是对灯实现了界面控制的功能,对于风扇、报警设备的
连接方式和实现方法和开关灯的实现方法相似。串口控制在智能家
居和智能工业领域中有着举足轻重的地位。’
参考文献
[1] 王昊.基于工控机平台智能家居系统设计与实现[
D
].山东大
学,2016.
[2] 顾家铭.物联网应用中的跨平台数据通信[
J
].电脑知识与技
术,2019 (20).
作者简介
董海桃( 1976-),女,山西省人。硕士学位,讲师。研究方向为
物联网技术、中文信息处理。
发布评论