基于CDMA的脉冲焊机无线监控系统*
2019-12-27王轩力
王轩力
(山西工程技术学院信息工程与大数据系,山西 阳泉 045000)
1 介绍
远程控制技术是制造业研究的前沿课题。许多大学和国际组织,如麻省理工学院、斯坦福大学、MIMOSA(机器信息管理开放系统联盟)、COMADEM(条件工程管理)和SMFPT(机械故障预防技术协会)等,将互联网应用于控制系统、诊断设备和改进技术。
远程控制系统能够对其他网络节点上的设备进行控制,但是不能满足网络控制技术的新要求(新要求是控制的无线化、程序的小型化和系统的可扩展性)。码分多址(CDMA)避免了上述限制,码分多址(CDMA)是各种无线电通信技术中常用的一种信道接入方式、一种扩频技术(在传输功率相同的情况下均匀地扩展数据的带宽,扩频码是一种伪随机码,与其他窄脉冲码不同,它具有窄模糊函数)。在CDMA中,本地生成的编码用比要传输的数据高得多的速率运行,它提供了新的手段和方法。
本文介绍了一种基于VC++的脉冲焊机CDMA网络控制系统。在CDMA网络中,利用Windows Sockets(Winsock)控制实现远程控制中心与被控设备数量之间的实时传输和控制。该系统采用了网络控制技术、CDMA网络技术和制造技术。它还提供了高层次的理论建模,编程方法和运行结果根据采用的软件和硬件来实现的。另外,它具有历史数据记录、维护方便、成本低等优点。
2 系统的理论模型
CDMA网络控制系统有三个部分(见图1),第一部分是远程控制中心。第二部分是CDMA网络。第三部分是受控设备。远程控制中心负责监测和历史数据管理。脉冲焊机是受控设备的组成部分。首先,通过在数据库中注册的CDMA网络将受控设备与远程控制中心连接。当需要操作受控设备时,可以对用户名、密码、IP地址和端口进行比对。如果是错误的,远程控制中心显示控制界面。用户必须选择所需的受控设备,才能看到程序的主界面。用户可通过对脉动焊机的具体动作进行监测。
图1CDMA网络控制系统
3 系统的设计方法
3.1 CDMA网络环境
GSM系统的数据速率只有9.6 kbps,无法满足高速无线数据业务的用户。
CDMA2000 1X (is-2000)是CDMA2000无线航空接口的核心标准。1X标准支持高达153kbps的数据包数据传输速度,在大多数商业应用中,真实世界的数据传输速度平均为60-100 kbps。IMT-2000还对数据链路层进行了更改,以便更多地使用数据服务,包括介质和链路访问控制协议和QoS。IS-95数据链路层仅为数据和语音电路交换信道提供“最佳传输”。CDMA具有成本低、易于维护和推广、不受限制、高可靠性和稳定性、高速接入等优点。因此,将CDMA技术应用于网络控制系统是一种较好的选择。
CDMA无线模块采用北京佳富信科技股份有限公司GF-3000 CDMA模式。支持短信、CSD、数据功能。它提供一个调制解调器主机、一条RS232数据线、一个UIM卡槽。
该系统安装了一个标准的调制解调器,可以满足Windows串行接口的需要。用户使用无线模块自带的RS232接口连接调制解调器和电脑,然后对其中的参数作相应设置。其中生产厂家选择标准的类型,调制解调器的传输速度我们选择19 200 b/s。用户将最大端口速度设置为57 600 bps,然后编写“AT+CGDCONT=AT&D2、IP、CMNET”的AT指令,“CMNET”为中国的接入点名称(APN)。按照中国移动规定,“#777”用于帮助建立CDMA连接请求的指令。因此,使用上述调制解调器建立了一个新的拨号连接。
3.2 系统的C/S模型
远程控制系统采用C/S(client/server)模式,即一台主机可以在网络上操作另一台主机。在用户端的实现中考虑了普通计算机、工作站等。客户端作为系统的核心,需要一个固定的IP地址和一个固定的端口。然而,一个动态的IP地址对服务器来说就足够了。网络控制系统的设计可以通过Winsock网络编程接口来实现。Winsock是一个网络编程接口在Windows的函数。它是参考socket定义的,socket在许多大学和组织中都很流行。
对于服务器端程序,我们先用bind()函数绑定套接字,绑定了以后用listen()函数让套接字进入监听状态,然后调用accept()函数,这样的话服务器进入就绪状态。如果在服务器准备阶段,客户端先发出请求,而服务器还没有做好相应准备,连接就会失败。
该系统采用TCP协议进行数据传输。工作方式是基于IP。具体线路连接好以后,我们设置用户端的网络地址是192.168.2.11,端口号9000。本系统用VC++进行编程,具体使用到了VC++里面的CSocket、CSocketFile和CArchive等实例来实现网络通信和控制。
3.3 服务器的设计
客户端和用户端的信息传输是双向的,服务器端必须能并发处理信息,所以我们在服务器端创建2个新套接字,分别是CClientSocket和CListenSocket。CClientSocket这个套接字是用来连接用户端的,而CListenSocket套接字是用来监听端口,及时接收用户端发来的请求信息。另外,我们还在服务器端创建2个CArchive对象,主要用于传输和存储数据。
服务器一直处于截获、发送和接收数据的状态。在特定的条件下,系统定义不同的功能来完成不同的动作。例如,接收客户机的命令时使用了CServerDlg::OnAccept()函数。如果服务器收到用户端的信号时,服务器会立刻回送当时的服务器状态给用户端。另一个例子是执行client的action命令,它使用switch的循环语句和CServerDlg::CtrlOperation()函数。
3.4 用户端
用户端主要是为了设置相应参数的,所以简单直观。用户端用软件编程来实现。用户端建立了一个新的套接字,即CServerSocket。CServerSocket的职责是接收和执行客户端的命令。
用户具有调整拾取相机的焦距,通过控制支架调整拾取相机的角度,控制快速成型设备的具体动作等功能。以滚筒正方向转动为例。当服务器执行用户端发送的滚轮正转指令时,服务器使用CRCtrlCenterDlg::OnOKSZMove()函数将成功信息返回给客户端。
4 系统测试结果
如图2所示,是具体的脉冲焊机。如图3所示,我们可以在设计面板上设置相应参数,以及通过控制不同的按钮来控制脉冲焊机的具体动作。当用户按下控制面板中的动作按钮时,用户端向服务器发送命令,服务器接受用户端的命令。从而直接控制了脉冲焊机的动作。同时,通过信息对话框将成功的信息告知用户端。实验结果表明,该系统能够及时、准确地实现网络控制中心与多台被控设备之间的无线通信和控制。
图2脉冲焊接机图3设置面板
5 结论
利用远程控制技术、CDMA网络技术和制造技术,在VC++中实现了一种基于脉冲焊机的CDMA网络控制系统。远程控制技术是制造业研究的前沿课题。它要求无线控制、程序小型化和系统可扩展性。在CDMA网络中,利用Winsock控制实现远程控制中心与被控设备之间的实时传输和控制。该系统采用了网络控制技术、CDMA网络技术和制造技术。它还提供了高层次的理论建模,编程方法和运行结果根据软件和硬件实现。此外,它还具有易于维护和成本低廉等优点。