基于UC_OS_的网络控制系统通讯接口设计

合集下载

基于μLC/OS—Ⅱ的SOPC系统平台下的网络通信

基于μLC/OS—Ⅱ的SOPC系统平台下的网络通信

1 引 言
由于 T PI C/ P协议 的广泛 应用 ,现在 越来 越 多 的设备 要求 要 具有 网络接 口以实 现 远 程 通 信 。随 着 F G P A的 发展 ,使 得 S P O C在 F G P A上 的实现 成 为 可能 ,S P O C也成 为 嵌 入式
领 域 的一个 热点 。本 文 采用 的是 在 A tr l a的 C c nl 系 列 的 F G 内采用 N ol+ CO — e yl eI o P A is / / S I ̄
内 用Nis 软 核 处 理 器 植 A. oI !  ̄C/ —I操 作 系 统 和 TCP I 议 实现 远 程 网络 通 信 OS I /P协
和 控 制 以 及 网 口到 IS 2 2 口的 协 议 转 换 。 L -3 串 关 键 词 :S C  ̄ OS I T /P UA Nis 网络 通 信 转 换 器 ‘ OP C/ — I CP I KT ol I
基于 S P O C的嵌 入式 系统 主要 由 1 核心 芯 片 S P 片 O C和片外 器件 , 以及 一些 相 关 的接
网接 步 协部.盏 —— —— — J 络詈异善的议分 在L — — — _ 、 口 串 和 口 G [二 口 _ 因 —— — 此
F G 的外 部 还要 加 一 片 以太 网控 制 器芯 PA 片和 R 一3 S 2 2电平 转 换 器 ,考 虑 到 Q a . ur ts uI I的 S P O C中 已经 有 了 网 络 控 制 芯 片
O八S I 的S C系统 平 台下 的网络 通信
3 9
基于 IC O 一 . / S Ⅱ的S P 系统平台下的网络通信 L O C
李 海 彬 高 节
( 火控 中心 电信室 成都 6 l3 ) l 1 7

基于μC-OS-Ⅱ的嵌入式系统以太网通信功能的实现

基于μC-OS-Ⅱ的嵌入式系统以太网通信功能的实现
(5)当控制器传送完包以后,memory中的第一个字(16bit)被CSMA/CD写入相应的Status Word,然后将TX FIFO中的packet number移到TX completion FIFO,当TX completion FIFO不为空时产生中断。
(6) DSP接收到中断后,开始执行中断处理程序,它读入中断状态寄存器,如果产生发送中断,则从FIFO ports寄存器读入发送的包的Packet Number,并将它写到Packet Number寄存器。然后从内存中读人状态字(包括设置Pointer寄存器为TX,RD,AUTOINC,即0x6000,然后从数据寄存器中读入包的状态字),它是EPH寄存器的镜像,
,就可以直接使用了。
(2 )sys_mbox_t消息
LwIP使用消息队列来缓冲、传递数据报文,因此要在sys_arch中实现消息队列结构sys_mbox_t,以及相应的操作函数。
sys_mbox_new()/创建一个消息队列 sys_mbox_free( ) /释放一个消息队列
自己的网络设备实现驱动时应参照这个模板,根据相应的网络芯片来实现。本系统选用的网络芯片是由SMSC公司生产的自适应10M/100M第三代快速以太网控制器芯片LAN91C111,集成了SMSC/CD协议的MAC(媒体层)和PHY(物理层)。由于其灵活性和集成度高,具有较高的性价比。
(3)sys_arch_timeout函数
LwIP中每个与外界网络连接的线程都有自己的timeout属性,即等待超时时间。这个属性表现为每个线程都对应一个sys_timeout结构体队列,包括这个线程的timeout时间长度
,以及超时后应调用的timeout函数,该函数会做一些释放连接,回收资源的工作.timeout结构体已经由LwIP自己在sys.h中定义好了,而且对结构体队列的数据操作也由LwIP负责,我们所要实现的是如下函数:

基于μC_OS-Ⅱ操作系统的车载CAN网络通信

基于μC_OS-Ⅱ操作系统的车载CAN网络通信
CAN初始化主要是设置CAN的通信参数.即通过对 CAN控制器中的寄存器进行设置.从而确定CAN控制器 的工作方式等。U'C2119中CAN控制器的初始化操作包 括:硬件使能、配置管脚连接、软件复位、设置总线波特 率、配置模式寄存器、配置中断工作方式、配置验收滤波 器工作方式、启动CAN等。设置总线波特率是个难点。所 有CAN节点的波特率要相同才能正常工作.要注意正确 配置VPBDIV和PLL寄存器。 5.2 CAN报文的接收和发送
函数。
void—jTq L唧NT0向ltIle巾oid)
,,表格错误或其
他CAN中断入口
{ err=CANLUTerrAd;
,,debug
C曲1.IlltEntry0; CaIl2.IntEn町0; VICVectAddr=O:
l 6 实验
为了进一步验证系统的CAN网络通信功能。采用 Vector公司的CAN总线测试系统平台进行测试。该测试 平台可以把测试对象作为CAN节点进行诸如电阻电容
数(11个连续的隐性位)的第128个事件,总线释放条件 软件可通过读取Tx错误计数器对计数器递减计数的情
况进行监测嗍。其它一些不是很严重的错误一般不会引起
总线错误.即使不处理也不会产生什么致命错误,如果为
了提高中断处理速度.可根据实际情况裁剪中断服务程
序。下面是一段结构结构化了的CAN通信异常中断处理
特性、节点差分电阻、总线终端电阻、CAN线上的物理电 平特性等方面的测试。测试软件CANoe通过仿真器可以
模拟出电路板在真实应用中的运行环境,所连接的网络 示波器CANscope可以在物理层测试中捕捉CAN总线的 物理信号进行观察。测试过程中。使用Vector公司提供的 干扰仪CANstres8制造出一般性汽车内部电磁信号干扰 环境,使用网络示波器CANscope进行观察,结果如图5 所示。

基于uClinux嵌入式操作系统的串行接口电路设计

基于uClinux嵌入式操作系统的串行接口电路设计

基于uClinux嵌入式操作系统的串行接口电路设计摘要:近年,嵌入式系统的设计被应用到越来越多的领域,但由于嵌入式操作系统的应用是与硬件设计紧密相关的,因此,根据不同的应用环境,需对uClinux内核源码进行适当的修改。

文中根据实际工程设计案例,对串行接口电路的硬件设计与uClinux内核的裁剪进行了详细的描述,为uClinux操作系统在嵌入式领域的应用起到了一定的借鉴作用。

关键词:串口电路;uClinux;嵌入式系统;裁剪TheDisignofSericalCircuitBasedonuClinuxEmbeddedSystemHUQing-wu,YUYing(ShenyangAircraftDesignandResearchInstitute,Shenyang110035,China)Abstract:Recently,embeddedsystemisusedinmoreandmoredomain,butbecauseitisbasedonthehardwarecircuit,souClinuxkernelmustbeeditaccordingtodifferentenviroment.Thispape rbasedontheengineeringcase,elaboratehowtodesignhardwareandhowtoedittheuClinuxkernel.Thissol utionisusefulfortheuClinuxembeddedsystem’sengineerapplication.Keywords:Serialcircuit;uClinux;Embeddedsystem;Edit根据实验任务的需要,实现上位机与下位机之间的快速数据传输,构建了以S3C4510B芯片为核心,配以存储容量为2M的Flash存储器,存储容量为16M的SDRAM寄存器,成功的将以串行接口电路为信息交换窗口的嵌入式系统应用到实际工程中。

μC/OS-Ⅱ实时操作系统下的GUI设计

μC/OS-Ⅱ实时操作系统下的GUI设计

理函数来简单说明:
… … … 、
- t … L
… l… ■ … ‘ ● f …
… …
^ i
_ t …

… … Ⅻ ’ p ■ nj 0


● m Ⅲ f ■“ … ■ … ■ - … …

… ,々 … ± ☆i {
¨… …

【 摘 要J 本文主要讨论 了基于 I / S  ̄ O 一Ⅱ实时操作 系统的图形用户接 口 G IGah s Ieae 的设计及具体 实现。图形用户接 口因其 良好 C U( r iUe n rc) p c r tf
的人机交互性 能而在软件 系统 中得到广泛的应 用。I / S—I具有代码精 简、 x O C I 效率 高、 门简单等特点 。但许 多扩展 功能必须额外 购买第三方软件 或 入 者 自行 开 发 , 如 : 例 文件 系统 、 网络 协 议 、 形 用 户界 面 ( U ) 。 作 者 结合 多年 的 嵌 入 式 应 用 开 发 经 验 , 细 描 述 了基 于  ̄ / S一Ⅱ操 作 系 统 的 G I 图 G I等 详 CO U 设计( 硬件 平 台是 三 星 A M7芯 片 s C 4 B X) 并 且 该 设 计 已经 在 公 司 产 品 中得 到 广泛 使 用。 R 340 O , 【 关键词 】 U 人机交互界面 t / S一Ⅱ 实时操作 系统 3 位 嵌入式开发 G1 x O C 2 中 图 分类 号 :P 1 . 文 献 标 识 码 : 文 章 编 号 :0 9— 0 7 2 1 )4—02 0 T368 A 10 4 6 ( 0 0 o 1 3— 2

I ¨ 狮
¨】
t ~ 、c , ’ 5 … ’

UC编程中的网络编程了解UC编程中的网络通信和协议

UC编程中的网络编程了解UC编程中的网络通信和协议

UC编程中的网络编程了解UC编程中的网络通信和协议UC编程中的网络编程:了解UC编程中的网络通信和协议在UC编程中,网络编程是一项重要的技术,它可以让应用程序通过网络与其他设备或者服务进行通信和交互。

本文将深入探讨UC编程中的网络通信和协议,以帮助读者更好地理解和应用这一技术。

一、网络通信基础1. IP协议UC编程中的网络通信基于IP协议,即Internet协议。

IP协议定义了数据在网络中的传输方式,包括数据如何被分割成数据包、如何寻址和路由等。

在UC编程中,我们可以使用IP协议进行设备之间的通信。

2. 端口在网络通信中,端口用于标识不同的应用程序或服务。

UC编程中的应用程序可以通过指定特定的端口与其他设备进行通信。

常用的端口有HTTP的80端口、FTP的20和21端口等。

3. Socket编程Socket是UC编程中用于实现网络通信的一种编程接口。

通过Socket编程,应用程序可以创建一个Socket对象,并通过该对象进行数据的发送和接收。

Socket编程是UC编程中网络通信的基础。

二、UC编程中的网络通信1. TCP/IP通信TCP/IP是一组用于网络通信的协议,包括了TCP(传输控制协议)和IP(网络协议)。

在UC编程中,我们可以使用TCP/IP协议实现可靠的数据传输。

通过建立TCP连接,应用程序可以发送和接收数据,并保证数据的准确性和完整性。

2. UDP通信与TCP/IP不同,UDP(用户数据报协议)是一种面向无连接的协议。

在UC编程中,我们可以使用UDP协议进行快速而简单的数据传输。

UDP通信适用于对数据可靠性要求不高的场景,如实时音视频传输。

3. HTTP通信HTTP(超文本传输协议)是一种应用层协议,常用于Web应用中的数据传输。

在UC编程中,我们可以使用HTTP协议进行数据的发送和接收。

通过发送HTTP请求和接收HTTP响应,应用程序可以与服务器进行通信,并获取所需的数据。

三、UC编程中的网络协议1. WebSocketWebSocket是一种在单个TCP连接上实现全双工通信的通信协议,它可以在浏览器和服务器之间建立持久连接。

基于UC/OS-Ⅲ的智能配电终端的设计

关 键 词 :U C/ OS Ⅱ;智 能 配 电终 端 ;短 距 离 无线 通 信 中图 分 类 号 :T P 2 3 文献标志码:B
De s i g n o f i n t e l l i g e n t d i s t r i b u t i o n t e r mi n a l b a s e d O i l UC / OS — - I I I
型化 的方 向发展 J 。本文提 出基于U C / O S —I I I 的智能配电终 端 ,从 实 际应 用角度 出发 ,充分考虑 了装置设 计 的柔 性 、
量 。A I O 板主要用以采集 电压 、电流等模拟量值 ,D I O 板主 要实现 开入 开 出板 ,同时 ,如有需 要DI O 板 亦可 实现直 流
Ab s t r a c t : Th i s p a p e r p r o p o s e s a n i n t e l l i g e n t d i s t r i b u t i o n t er mi n a l b a s e d o n mo d u l a r d e s i g n. T h i s t e r mi n al c h os e s t h e l a t e s t UC/ OS-I I I RTOS wh i c h h a s h i g h r e a l - t i me a n d s t a b i l i t y . Th i s t e r mi n a l i mp r o v e s t h e t r a d i t i o n a l d e s i g n o f e t h e r n e t c i r c u i t a n d p r o v i d e s l f n e w d e s i g n . Th i s i n t e l l i g e n t t er mi n a l i mp r o v e s t h e c o n v e n i e n c e s o f ma i n t en a n c e s v i a t wo wa y s : we b a n d s h o r t - r a n g e wi r e l e s s n e t wor k . Mo r e o v e r , t h i s t e r mi n al c a n c o m mu n i c a t e wi t h SCADA v i a G PRS mo d em. K e y wo r d s : UC/ O S —I l l ; i n t el l i g en t d i s t r i bu t i o n t e r mi n al ; s h or t - r a n g e wi r e l e s s c o mm u n i c a t i o n

μCOS—II网络通信功能的实现


操作, 因此其初始化工作必须在 μC/OS—II 完全启动之后, 即在 任务中进行。主函数程序框架如下: main ( ) { OSInit ( ) ; 目标板初始化; OSTaskCreat (LWIP_main ( ) , (void * ) 0, (void * )& [STACKSIZE - 1] , 0 ) ; TasklwipStk OSStart ( ) ; } 编译运行后, 用 ping IP 地址命令可等到 ICMP reply 回应, 用 telnet IP 地址命令可以看到 echo server 的回显效果。图 2 是 Ping 命令的测试结果图,这表明 LWIP 已成功地移植到了 μC/OS—II 中。
1
μC/OS—II
μC/OS—II 是由 Jean brosse 于 1992 年编写的一个嵌入 可移植、 固化、 裁剪的抢占 式多任务操作系统。它是一个完整的, 式实时多任务内核。 μC/OS—II 大部分代码是用 ANSIC 语言编 写, 仅少量与微处理器硬件相关的代码是用汇编语言编写, 这使 得它可以方便地移植到其他微处理器上。μC/OS—II 移植只需要 OS_CPU_C.C 和 修 改 与 处 理 器 相 关 的 3 个 文 件 OS_CPU.H, OS_CPU_A.ASM。 本文中实现 μC/OS—II 网络通信功能的硬件平 台采用基于 ARM 的微处理器 S3C44BOX。
科技情报开发与经济 文章编号: 1005-6033 (2MATION DEVELOPMENT & ECONOMY
200 9 年 第 19 卷
第 18 期
收稿日期: 2009-04-09
μC/OS—II 网络通信功能的实现 *
李彦军
(山西大学商务学院, 山西太原, 030031 ) 摘 要: 通过移植 LWIP 协议, 扩充 μC/OS—Ⅱ的内核, 实现了网络通信功能, 并对移植 结果进行了测试。 关键词: μC/OS—Ⅱ; LWIP; 移植; 网络通信功能 TP316.8 文献标识码: A 中图分类号: 随着嵌入式系统应用的普及, 我们面对的系统越来越复杂, 采用以专用计算机或单片机为核心,通过汇编语言编程对系统 进行直接控制的方式难以满足开发的需求,嵌入式操作系统的 作用正变得日益重要 。 目前国际上主流的嵌入式操作系统有 Windows CE、 嵌入式 Linux 和 μC/OS—II, 而 μC/OS—II 又以其免 费且公开源码的特点得到广泛应用。

基于UC_OS_II的串口与网口通信设计

现代制造工程2007年第12期设备设计/诊断维修/再制造基于UC/O S2Ⅱ的串口与网口通信设计3莫凯1,何宏2,孙虹2,贾衡天2(1天津市经济体制改革研究所,天津300052;2天津理工大学天津市薄膜电子与通信器件实验室,天津300191)摘要:串口通信和网口通信是嵌入式操作系统数据传输中常见的通讯方式,各有应用范畴和特点;而UC/OS2Ⅱ又是一个源代码公开的实时嵌入式操作系统。

在介绍UC/OS2Ⅱ操作系统特点以及串口和网口通信协议规范的基础上,研究了网口和串口间数据互通传输问题。

关键词:UC/OS2Ⅱ;网口;串口;Easy A r m2000目标板中图分类号:TP391 文献标识码:A 文章编号:1671—3133(2007)12—0120—03The desi gn of da t a comm un i ca ti on between network i n terfaceand ser i a l i n terface ba sed on UC/O S2ⅡMo Kai1,He Hong2,Sun Hong2,J ia Heng2tian2(1I nstitute of Econom ic Ref or m,Tianjin300052,CHN;2Depart m ent of Op t o Electr onic I nf or mati on and Electr onic Engineering,Tianjin University of Technol ogy,Tianjin300191,CHN) Abstract:Serial communicati on and net w ork communicati on,which have each own characteristic and app licati on category,are all the common communicati on method of e mbedded operati on syste m in the p r ocess of data trans m issi on.UC/OS2Ⅱis the real ti m ee mbedded operati on syste m,of which s ource code is open and free.Firstly intr oduces the characteristic of UC/OS2Ⅱ,the p rinci2p le of serial communicati on and the p r ot ocol of net w ork,then studies the p r oblem of data trans m issi on bet w een serial interface and net w ork interface.Key words:UC/OS2Ⅱ;Net w ork interface;Serial interface;Easy A r m2000 引言随着嵌入式系统与网络的结合越来越紧密,将嵌入式实时操作系统移植到相应的芯片中实现网络通讯,已成为嵌入式系统重要的研究方向。

基于μCOS的物联网终端的设计

本科学生毕业设计基于μC/OS的物联网终端的设计院系名称:专业班级:学生姓名:指导教师:职称:讲师黑龙江工程学院二○一二年六月The Graduation Design for Bachelor's Degree Based on μC/OS NetworkingTerminal DesignCandidate:Speccialty:Measurement & Control Technologyand InstrumentationClass:08-02Supervisor:Lecturer Zhang LingzhiHeilongjiang Institute of Technology2012-06·Harbin摘要物联网是指在全球统一的编码系统基础之上,利用互联网技术和射频识别(RFD)技术、无线数据通信技术、计算机技术等基础上形成的广义的技术体系,以此构造的覆盖世界上万事万物的实物互联网。

物联网概念一经提出就受到世界各国以及整个IT 行业的一致认可和好评,所以,物联网核心的终端更是有广阔的前景,尤其是基于ARM 处理器并采用μC/OS-Ⅱ操作系统的终端系统。

立足于物联网需求,特别考虑到实时性能和成本因素,本课题设计了一套工业应用的针对信息采集的物联网终端系统。

本课题主要由一种由传感器和嵌入式系统组成主机,将采集数据发送到Internet上的物联网技术应用。

系统采用ARM微处理器作为核心处理单元,将接收到的温湿度传感器发送的即时温湿度数据信息,通过DA9000模块发送到以太网公共网络。

采用socket编程技术建立服务器,接收嵌入式主机发送的数据信息,将数据上传到Internet,在通过Internet向物联网终端发出操作命令。

关键词:物联网终端;嵌入式;互联网;客户端;μC/OS-ⅡAbstractThe internet of things is the world unified coding system which based on the use of the Internet technology,and the radio frequency identification(RFD)technology is wireless data communication technology。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

文章编号:1006-1576(2003)03-0055-03基于UC/OS -Ⅱ的网络控制系统通讯接口设计倪一鸣(福州市委党校电教中心,福建福州 350014)摘要:基于UC/OS-Ⅱ实时操作系统的网络控制系统,通过以太网将服务器和各地控制器联结,可控制多个电机协调运动。

服务器采用工业级计算机,客户端(控制器)采用集成网卡接口的嵌入式系统,通过交换机进行数据交换。

系统根据IP地址将命令送给各控制器,同时将客户端状态返回,并通过检验校验字符的方式减少联网过程的握手次数。

其通讯的最基本函数用标准C语言编写,生成静态库文件,可直接通过工程方式使用。

其通讯接口包括联网初始化、服务器和客户端网络联接、以及控制、异常处理和维护等程序。

关键词:通讯接口;嵌入式系统;网络控制系统;TCP/IP;UC/OS-Ⅱ 中图分类号:TP393.09 文献标识码:ADesign of Communication Interface for Network Control SystemBased on UC/OS-ⅡNI Yi-ming(TV Education Center, Party School of Fuzhou City, Fuzhou 350014, China) Abstract: The control of combine d movement for many motors can be realized with the network control system based on UC/OS-Ⅱ via the connection among servers and every controllers by ethernet. Industry computer is used in s erver, embedded system that has the interface of integrated network card is used in client server, and data swapping is carried through exchange. According as IP address, commands was sent to every controllers and the data information of client server was retaken at the same time. The connected times of network is reduced with the test mode of check-character string. Basal communication function is compile d with C language, then, it creates library file and uses it in engineering mode. C ommunication Interface includes programs of initialization of connected n etwork, the n etwork connection between server and client server, control, processing and maintenance.Key words: Communication Interface; Embedded System; Network control system; TCP/IP; UC/OS-Ⅱ 1 概述嵌入式实时操作系统具有如下特点:① 响应速度快,可及时处理外部消息和更新系统参数;② 系统可靠性高,可避免误动作和系统崩溃;③ 体积小,在各种条件下方便安装;④ 成本低廉,便于大量开发。

由于其独有的优势,这种系统目前正得到越来越广泛的应用。

2 基于UC/OS-Ⅱ的网络通讯接口设计2.1 系统构成基于UC/OS-Ⅱ的网络控制系统,用以太网将服务器和各地控制器联为一体,协调动作。

为了维护的方便,服务器采用工业级的计算机,客户端(控制器)采用的是嵌入式系统。

通过交换机进行数据交换。

系统的构成如图1所示。

图1 系统的构成收稿日期:2002-11-26;修回日期:2003-01-29 作者简介:倪一鸣(1959-),男,福建人,福州市委党校讲师,从事计算机教学与科研。

・55・客户端的控制器对应着IP地址,服务器根据IP地址将不同的命令送给控制器,同时将客户端的状态返回,写进服务器的数据库中,形成日志,以便查询状态和进行现场恢复的工作。

2.2 系统的程序设计由于系统是基于工业现场控制,高效的网络传输必不可少,为此,研究了各种网络协议,选择了TCP/IP协议。

TCP/IP是指一系列的协议,包括TCP(传输控制协议)、UDP(用户数据报协议)、IP (Internet协议)还有一些更低层的连接层协议,如Ethernet(以太网协议)等。

用TCP协议传输的数据实际是指数据流中的段,而用UDP协议传输的数据是指数据包。

IP则是TCP、UDP(传输层协议)之下的网络层协议。

IP所提供的是非可靠的、无连接能力的、向指定主机地址的包传送的协议。

IP包也叫数据包。

数据包可能出现丢失、重复或次序紊乱等现象,所以,它是非可靠的协议。

但是,IP 协议的最大好处是,IP数据包独立于低层的网络,所以它是一种通用的数据传送方法。

TCP和UDP都属于IP上层的传输层协议。

二者都使用端口号作为送往主机的解码地址。

端口号由各个具体应用所确定,使用多个端口号能完成“一机多网”的操作。

每个UDP数据包和TCP数据段中都含源端口号和目的端口号。

为接收远端的输入而等待着执行接入操作的主机是服务器,发起接入请求的主机是客户机。

嵌入式应用可以从标准的网络协议获益很多,用最少的资源可实现最广泛的远方监控。

为了提高系统的实时性,将TCP/IP协议进行了修改和封装,主要通过检验校验字符的方式减少联网过程中的握手次数。

在嵌入式系统中,用标准C语言,将通讯的最基本函数进行了编写,生成静态库文件,可直接通过工程方式使用。

(1) 联网的初始化工作为了进行联网,要在嵌入式操作系统安装网卡,同时在系统的批处理文件中,运行网卡驱动程序。

一般的网卡驱动程序都提供可直接在实时操作系统的安装文件。

网卡安装上驱动程序并正常工作,会显示网卡的端口号和中断号。

程序初始化时,需根据系统中的*.CFG文件,配置客户端的IP地址和获取与之相联的服务器的端口地址。

使用的配置文件如下:my_ip=192.168.0.114 (本地端的IP地址)hostname=zcg (本地端的IP地址)domainslist="jdgc" (域名)nameserver=192.168.0.100 (服务器端的IP地址)netmask=255.255.255.0 (子网掩码)(2) 服务器的网络联接程序在工业控制中,服务器端要和多个控制器进行联接。

因此,在服务器运行程序中,还必须准备和客户端建立联接,一旦网络接口监听到有客户端需与之联接,必须及时做出反应。

服务器端联接程序流程如图2。

图2 服务器端联接程序流程框图服务器端程序开始运行时,将一直对网络进行监听,直到与一个客户端建立联接。

如果程序运行中,服务器将建立最新的联接,程序返回后记录最新建立的联接参数:sockAccept=accept(sockID, (struct sockaddr *)& client_addr, & cltaddr_length);sockID_sun=sockAccept;memcpy (& client_addrSun, & client_addr, sizeof (struct sockaddr));sockList[i]=sockAccept; memcpy (& client_addrList[i],& client_addr, sizeof (struct sockaddr));与客户端建立联接后,服务器就会记录下与之建立的联接参数,通过这些参数与客户端进行数据传输。

(3) 客户端的网络联接程序因为客户端是作为系统的一个线程,一旦上电,就会自动要求与服务器端建立联接,所以在客户端程序的初始化中,当网卡参数自动加载后,就会发出建立请求。

这部分的源代码如下:if (!tcp_open(& s, 0, remoteip1, remoteport, NULL )){printf ("Unable to open connection \n"); return;} sock_mode ((sock_type *) & s,TCP_MODE_BINARY);sock_wait_established ((sock_type *)& s,sock_delay, NULL, & status);・56・在服务器对请求信息未作出反应前,客户端将处于等待状态;在建立联接后,客户端将进入命令处理模块;在请求一段时间后没有回应,客户端会输出出错信息,驱动外面指示灯变红。

(4) 控制程序的实现建立网络联接后,服务器需将控制命令传给相应的客户端。

客户端根据传入的控制命令,执行控制函数,控制外面机构完成预期的动作。

通过该功能模块,服务器具有单步命令调试和程序段下载、执行功能,前者用于系统的调试阶段,后者便于用户编写系统的控制程序。

单步调试时,服务器窗口有一个单步命令调试区,如果在其中写入控制命令,主控计算机会将控制命令直接传给客户端。

客户端接收到控制命令后,通过查表判断传入的命令是否合法,非法则向主控计算机反馈信息,合法便执行该命令并将执行结果返回给服务器端。

接收数据时,从IP层来的数据经过状态机去掉TCP包头后送到应用层。

发送数据时,软件状态机在数据前面加上TCP包头再发送到IP 层。

为了保证数据交互的准确,在发送数据段的末尾特意加上特殊字符‘$’,进行二次握手。

客户端接收到‘$’,表示当前接收完毕,向服务器返回消息。

服务器接收‘$’,向客户端发送新的命令,进入待发状态。

流程见图3。

图3 客户端流程图 (5) 程序的异常处理和维护程序执行中故障难免,必须现场保护和及时修复,为此,可通过记录日志及时检测系统运行状态。

在本地建立了一个数据库,对一个月的生产、消耗信息进行记录,同时对各种工作状态进行及时更新。

系统工作中,当客户端工作状态异常时,会自动报警,要求关闭该客户端,重新建立连接。

相关文档
最新文档