浔之漫智控技术-西门子PLC代理商
西门子PLC模块 , 变频器 , 触摸屏 , 交换机
西门子6ES7216-2AD23-0XB8诚信经营

西门子6ES7216-2AD23-0XB8诚信经营

Delphi是一种具有功能强大、简便易用和代码执行速度快等优点的可视化快速应用开发工具,它在构架企业信息系统方面发挥着越来越重要的作用,许多程序员愿意选择 Delphi作为开发工具编制各种应用程序。但是,美中不足之处是 Delphi没有自带的串口通信控件,在它的帮助文档里也没有提及串口通信,这就给编制通信程序的开发人员带来许多不便。
目前,利用 Delphi实现串口通信的常用的方法有 3种:一是利用控件,如 MSCOMM控件和 SPCOMM控件;二是使用 API函数;三是调用其他串口通信程序。其中利用 API编写串口通信程序较为复杂,需要掌握大量的通信知识。相比较而言,利用 SPCOMM控件则相对较简单,并且该控件具有丰富的与串口通信密切相关的属性及事件,提供了对串口的各种操作,而且还支持多线程。下面本文结合实例详细介绍 SPCOMM控件的使用。
SPCOMM的安装
1.选择下拉菜单 Component中的 Install Component选项,弹出如图 1所示的窗口。


在 Unit file name处填写 SPCOMM控件所在的路径,其他各项可用默认值,点击 OK按钮。
2.安装后,在 System控件面板中将出现一个红色控件 COM。现在就可以像 Delphi自带控件一样使用 COM控件了。
SPCOMM的属性、方法和事件
1.属性
●CommName:表示 COM1、 COM2等串口的名字;
●BaudRate:根据实际需要设定的波特率,在串口打开后也可更改此值,实际波特率随之更改;
●ParityCheck:表示是否需要奇偶校验;
●ByteSize:根据实际情况设定的字节长度;
●Parity:奇偶校验位;
●StopBits:停止位;
●SendDataEmpty:这是一个布尔型属性,为 true时表示发送缓存为空,或者发送队列里没有信息;为 false时表示发送缓存不为空,或者发送队列里有信息。
2.方法
●Startcomm方法用于打开串口,当打开失败时通常会报错。错误主要有 7种:⑴串口已经打开;⑵打开串口错误;⑶文件句柄不是通信句柄;⑷不能够安装通信缓存;⑸不能产生事件;⑹不能产生读进程;⑺不能产生写进程;
●StopComm方法用于关闭串口,没有返回值;
●WriteCommData(pDataToWrite: PChar;dwSizeofDataToWrite:Word )方法是个带有布尔型返回值的函数,用于将一个字符串发送到写进程,发送成功返回 true,发送失败返回 false。执行此函数将立即得到返回值,发送操作随后执行。该函数有两个参数,其中 pDataToWrite是要发送的字符串, dwSizeofDataToWrite是发送字符串的长度。
3.事件
●OnReceiveData :procedure (Sender: Tbbbbbb;Buffer: Pointer;BufferLength: Word) of bbbbbb
当有数据输入缓存时将触发该事件,在这里可以对从串口收到的数据进行处理。 Buffer中是收到的数据, BufferLength是收到的数据长度。
●OnReceiveError : procedure(Sender: Tbbbbbb; EventMask : DWORD)
当接收数据出现错误时将触发该事件。


SPCOMM的使用
下面是一个利用 SPCOMM控件的串口通信的例子。
以实现 PC机与单片机 8051之间的通信为例,首先要调通它们之间的握手信号。假定它们之间的通信协议是: PC到 8051一帧数据 6个字节, 8051到 PC一帧数据也为 6个字节。当 PC发出( F0,01,FF,FF,01,F0)后 8051能收到一帧( F0,01,FF,FF,01,F0),表示数据通信握手成功,两者之间就可以按照协议相互传输数据。
创建一个新的工程 COMM.DPR,把窗体的 NAME属性定为 FCOMM,把窗体的标题定义为测试通信,按照图 2添加控件 (图 2中黑色矩形围住的控件即为 COMM1)。


1.设定 COMM1属性:
●波特率: 4800;
●奇偶校验位:无;
●字节长度: 8;
●停止位: 1;
●串口: COM1。
Memo1中将显示发送和接收的数据。将新的窗体存储为 Comm.pas。
2.编写源代码
//变量说明
var
fcomm: TFCOMM;
viewbbbbbb:bbbbbb;
i:integer;
rbuf,sbuf:array[16] of byte;
//打开串口
procedure TFCOMM.bbbbShow(Sender: Tbbbbbb);
begin
comm1.StartComm;
end;
//关闭串口
procedure TFCOMM.bbbbClose(Sender: Tbbbbbb; var bbbbbb: TClosebbbbbb);
begin
comm1.StopComm;
end;
//自定义发送数据过程
procedure senddata;
var
i:integer;
commflg:boolean;
begin
viewbbbbbb:=‘’ ;
commflg:=true;
for i:=1 to 6 do
begin
if not fcomm.comm1.writecommdata(@sbuf[i],1) then
begin
commflg:=false;
break;
end;
//发送时字节间的延时
sleep(2);
viewbbbbbb:=viewbbbbbb+ inttohex(sbuf[i],2)+‘’ ; end;
viewbbbbbb:=‘发送’+ viewbbbbbb;
fcomm.memo1.lines.add(viewbbbbbb);
fcomm.memo1.lines.add(‘’ );
if not commflg then messagedlg(‘发送失败 !’ ,mterror,[mbyes],0);
end;
//发送按钮的点击事件
procedure TFCOMM.Btn_sendClick(Sender: Tbbbbbb);
begin
sbuf[1]:=byte($ f0); //帧头
sbuf[2]:=byte($ 01); //命令号
sbuf[3]:=byte($ ff);
sbuf[4]:=byte($ ff);
sbuf[5]:=byte($ 01);
sbuf[6]:=byte($ f0); //帧尾
senddata;//调用发送函数
end;
//接收过程
procedure TFCOMM.Comm1ReceiveData(Sender: Tbbbbbb; Buffer: Pointer;BufferLength: Word);
var
i:integer;
begin
viewbbbbbb:=‘’ ;
move(buffer^,pchar(@rbuf^),bufferlength);
for i:=1 to bufferlength do
viewbbbbbb:=viewbbbbbb+ inttohex(rbuf[i],2)+‘’ ;
viewbbbbbb:=‘接收’+ viewbbbbbb;
memo1.lines.add(viewbbbbbb);
memo1.lines.add(‘’ );
end;
如果 memo1上显示发送 F0 01 FF FF 01 F0和接收到 F0 01 FF FF 01 F0,这表示串口已正确地发送出数据并正确地接收到数据,则串口通信成功

一、GPRS简介
   GPRS—General Packet Radio Service,GPRS为通用分组无线业务的简称,是欧洲电信协会GSM系统中有关分组数据所规定的标准。GPRS具有充分利用现有的网络、资源利用率高、始终在线、传输速率高、资费合理等特点。
  与GSM CSD业务不同的是,GPRS业务将以数据liuliang计费,而GSM CSD业务则以时间计费,GPRS这一计费方式更适应数据通信的特点。此外,GPRS业务的速度较GSM CSD业务也将有很大tigao,GPRS可提供高达115kb/s的传输速率(高值为171.2kb/s),下一代GPRS业务的速度可以达到384Kbit/s。
   GPRS一个较大的优势是能够充分利用现有的GSM网,可以使运营商在全国范围内推出此项业务。相信在数年内,通过便携式电脑,GPRS用户能以与ISDN用户一样快的速度上网浏览,同时也使一些对传输速率敏感的移动多媒体应用成为可能。
   GPRS用户只有在发送或接收数据期间才占用资源,这意味着多个用户可高效率地共享同一无线信道,从而tigao了资源的利用率。同时,用户只需按数据通信量付费,而无需对整个链路占用期间付费。实际上,GPRS用户可能连接的时间长达数小时,却只需支付相对低廉的连接费用,可使用户的使用费用大大降低。
   GPRS通信模块就是为使用GPRS服务而开发的无线通信终端设备。可应用到下列系统集成中: 远程数据监测系统、远程控制系统、自动售货系统、无线定位系统、门禁保安系统、物质管理系统等。
   
  二、GPRS特点
   GPRS,通用无线分组业务是一种基于GSM系统的无线分组交换技术,提供端到端的、广域的无线IP连接。GPRS充分利用共享无线信道,采用IP Over PPP实现数据终端的高速、远程接入。作为现有GSM网络向第三代移动通信演变的过渡技术(2.5G),GPRS在许多方面都具有显著的优势。
   GPRS有下列特点:
   1、可充分利用现有资源—中国移动全国范围的电信网络——GSM,方便、快速、低建设成本地为用户数据终端提供远程接入网络的部署;
   2、传输速率高,GPRS数据传输速度可达到57.6Kbps,高可达到115Kbps—170Kbps,完全可以满足用户应用的需求,下一代GPRS业务的速度可以达到384Kbit/s;
   3、接入时间短,GPRS接入等待时间短,可快速建立连接,平均为两秒;
   4、提供实时在线功能 “alwaysonline”,用户将始终处于连线和在线状态,这将使访问服务变得非常简单、快速;
   5、按liuliang计费,GPRS用户只有在发送或接收数据期间才占用资源,用户可以一直在线,按照用户接收和发送数据包的数量来收取费用,没有数据liuliang的传递时,用户即使挂在网上也是不收费的。
   GPRS业务,具有接入迅速、永远在线、liuliang计费等特点,在远程突发性数据实时传输中有不可比拟的优势,特别适合于频发小数据量的实时传输,因而GPRS业务在某些行业上有特殊的应用。
   
  三、GPRS系统结构
   GPRS网是在GSM电话网的基础上增加以下功能实体构成的: N(服务GPRS支持节点)、GGSN(网关GPRS支持节点)、PTMSC(点对多点服务中心);共用GSM基站但基站要进行软件更新;采用新的GPRS移动台;GPRS要增加新的移动性管理程序;通过路由器实现GPRS骨干网互联;GSM网络系统要进行软件更新和增加新的MAP信令和GPRS信令等。GPRS骨干网的逻辑结构如图1所示。


图1 GPRS骨干网的逻辑结构图


   
   GPRS网上增加了一些接口,主要包括:
   Gb口:N通过Gb口与基站BSS相联,为移动台MS服务。通过逻辑控制协议LLC,建立N与MS之间的连接,提供移动性管理(位置跟踪)和安全管理功能。N完成MS和N之间的协议转换,即骨干网使用的IP协议转换成SNDCP和LLC协议,并提供MS鉴权和登记功能。
   Gn口:N通过Gn口和GGSN相联,通过GPRS隧道协议(GTP)建立N和外部数据网(X.25或IP)之间的通道,实现MS和外部数据网的互联。
   Gs口:用于N向MSC/VLR发送地址信息,并从MSC/VLR接收寻呼请求,实现分组型业务和非分组型业务的关联。
   Gr口:HLR保存GPRS用户数据和路由信息(IMSI、N地址),每个IMSI还包含分组数据协议PDP信息,包括PDP类型(X.25或IP)、PDP地址及其QoS等级以及路由信息。
   Gi口:GGSN通过Gi口实现GPRS网和外部数据网(PDP)的互联。GGSN实际上是两个互联网网关,GPRS本身属于IP领域网络,Gi口支持X.25和IP协议。从PDN网看GGSN,GGSN可看作是一个路由器连到PDN网。GGSN包含用于连接GPRS用户的路由信息,为外部数据网的PDU送到MS提供通道。通过GGSN与GPRS网互联的分组数据网PDN,可以是PSPDN网,这时,GPRS支持ITU-T X.121和ITU-T E.164编号方案,提供X.25虚电路及对X.25快速选择,还支持网间的X.75协议连接;也可以是Internet网,基于IP协议,在IP数据报传输方式中,GPRS支持TCP/IP头的压缩功能。
   
  四、GPRS DTU及系统组网
   DSLC GPRS无线数据传输系统以中国移动GSM/GPRS网络为通信平台,采用GPRS、SMS等承载方式,通过无线数据传输终端设备(GPRS DTU),提供透明数据传输通道,满足行业用户数据传输需求。 
   
  系统组网单元
   • 数据终端设备 (DTU)
  提供用于连接用户设备的RS232/485 串行接口,适用于各种工业应用。
   • GPRS-1X网络
  中国移动公司的无线公用数据传输网络,为智能设备提供透明的数据传输通道。
   • 数据中心
  命令接收/发起,接收并处理数据终端的数据。
   
  组网方案介绍
   • GPRS无线监控系统的组网比较简单,GPRS DTU可直接与用户设备通过RS-232或RS-485接口连接。
   • 数据终端(GPRS DTU)的接入:GPRS用户可选择CMNET和APN接入网络,CMNET通常用于公众用户,APN针对行业用户,通常在一个组内,用户需设定用户名和密码,安全性更好。此外,APN用户可以申请绑定移动内网的固定IP地址。
   • 数据中心的组网略微复杂一些。结合GPRS承载网络的特点,根据GPRS应用领域,我们提供数据中心组网方案多种应用形式供应用开发商参考。组网形式的选择主要由业务数据量、可靠性要求、数据保密性、网络状况决定。


  方案1: GPRS MODEM接入方式 (监控中心作为数据终端绑定固定IP地址)
  此种方案适用于没有接入Internet、而且对安全要求极高的企业;适合总数据带宽需求不太大的应用,例如使用Polling 传输协议的数据采集系统;全部数据在GPRS 网内运行;要求所有GPRS 终端之间可以直接通讯;数据中心的GPRS 数据终端接入点邦定固定IP 地址。(即至少提供一个邦定固定IP地址的SIM 卡)
  方案2: Internet接入方式见图2 (监控中心经由Internet接入无线网)
  企业已有稳定的、的连接到Internet 的接入;企业端的路由器端口地址,监控中心IP地址应是公有的,且由为企业提供Internet 连接的ISP 提供, 此种方案客户须先向INTERNET运营商申请公网固定IP。中心用公网固定IP,监控点直接向中心发起连接。或客户公司有一台连接Internet的服务器,并且具有公网固定IP,但是考虑到服务器的稳定运行问题,通常不让在服务器上安装其他应用软件,所以GPRS数据中心系统也不能安装在该服务器上,可以用NAT端口映射的方法来解决这个问题。
  此种方案在实时性和稳定性方面很好,但公网固定IP使用费用比较高。


  方案3:专线接入方式 见图1 (监控中心经DDN专线接入无线网)
  此种方案适于企业没有接入Internet 或企业对安全方面考虑较高,适合金融、
  证券、工业监控等行业使用;企业通过专线接入中国移动的路由器,用户端的接入路由器必须提供公有的IP 地址。
   GPRS专网系统DTU终端上网登录监控服务器的工作过程为:
   1 GPRS DTU发出GPRS网络发出登录请求
   2 请求中包括由移动公司为GPRS专网系统专门分配的专网APN
   3 据请求中的APN,GGSN向DNS服务器发出查询请求
   4 找到与企业用户的系统服务器平台连接GGSN
   5 并将用户请求通过GTP隧道封装送给GGSN
   6 GGSN将用户认证信息(包括手机号码、用户账号、密码等)通过专线送至企业Radius进行认证;Radius认证服务器看到手机号等认证信息,确认是合法用户发来的请求
   7 向DHCP服13 务器请求分配用户地址
   8 Radius认证通过后,由Radius向GGSN发送携带用户地址的确认信息
   9 用户得到IP地址后,就可以携带数据包,对GPRS 专网系统信息查询和业务处理平台进行访问
   
  方案4: 动态IP的解决方案
  对于没有固定IP的应用系统,组网方式同“固定IP接入”。解决问题的关键在数据中心端,目前有两种解决方案:
   1. 短信发送IP 
  当数据中心的IP地址发生改变,中心端可通过短信的方式通知终端设备当前的新IP地址并通知其连接。短信发送可以采用通过Internet或USB接口的GPRS modem。
   2. 动态域名解析
  在使用动态DNS方式时,首先有几件事项要先准备。
  是Domain Name,需要申请一组三级域名或二级域名。
  第二是需要到网域管理中心来指定动态DNS服务。
  当准备工作完成后,即会从网域管理中心得到一个Client软件,用来维护动态IP与Domain Name,当数据中心的计算机开机后,即可从ISP处取得动态IP,再透过Client软件与DDNS 服务器联机并刷新域名与IP对照,GPRS终端可通过DNS的方式来进行Domain Name 的正反解译,而后建立连接。
   
  方案5: 中心采用专线接入见图3, 所有点都采用内网固定IP
  此种方案客户的数据中心通过一条APN专线接入移动公司GPRS网络,双方互联路由器之间采用私有固定IP地址进行广域连接,并用防火墙进行隔离,在防火墙上进行IP地址和端口过滤。移动为客户分配专用的APN,用于GPRS专网的SIM卡开通该专用APN。得到专用APN后,给所有监控点及中心分配APN专网内部固定IP。见图二。




   此种方案在实时性、安全型和稳定性方面都很好,适用于安全性要求较高、数据点比较多、实时性要求较高的应用环境。
   
  方案6: 中心采用移动APN专网固定IP见图4
  此种方案客户先与移动申请APN专网业务,移动为客户分配专用的APN,客户可以申请绑定移动内网的固定IP地址。中心用无线MODEM拨号上网,得到其内网固定IP;监控点直接向中心发起连接。中心和监控点都具有移动内网固定IP,减少中间环节,稳定性增强;且所有数据都在移动GPRS的APN内网传输,无需经过公网,安全性增强。见图三。


图4


   此种方案无需负担专线月租费用,性价比合理,适合总数据带宽需求不太大的应用。推荐小型客户使用。
   
  五. GPRS DTU的应用
   GPRS DTU可提供以下几类应用:
   • 运输业:车辆及智能调度。
   • 金融、证券和商业:无线POS、无线ATM、自动售货机、流动银行等。
   • 实时发布股市动态、天气预报、交通信息等。
   • 公共安全业:随时随地接入远程数据库。
   • 遥测、遥感、遥控:如气象、水文系统收集数据,对灾害进行遥测和告警,远程操作。
   • 提供VPN业务,使企业员工能够随时随地与总部保持联系,降低公司建设自己的广域网的成本。
   • 提供以GPRS承载业务为基础的网络应用业务和基于WAP的各种应用。
   • 通过手提电话或电脑,可检查自动售卖机内的货存和营业额。
   • 自动售卖机的手提电话付款。
   • 监视器的错误状况,液体水平,温度...
   • 监视冷库温度,湿度。内置温度探针(-25°/+100°)。
   • GSM天文台,广泛应用在飞翔和航海俱乐部。
   • 监视老人及行动不便的人。它可以将警报通过语音或短讯同时发给8个不同的电话号码。
   • 可以遥控商业及住宅的防盗警报。
   • 可以遥控暖气和冷却系统。
   • 可以应用在汽车的防盗警报。
   • 机房监控和远程维护管理系统
   银行储蓄点机房监控
   通信行业远端无人值守站机房监控和远程维护(如移动通信基站、微波站、光纤中继站等)
   其他无人值守点(如仓库、办公楼等)监控
   • 移动车辆监控调度系统
   公安、110、交警车辆监控调度
   银行运钞车、邮政运输车监控调度
   出租车管理调度
   公交车辆调度和指示
   集团车辆监控调度
   • 移动性数据查询系统
   移动性证卷交易和信息查询
   公安移动性数据(身份证、犯罪档案等)查询
   交警移动性数据(车辆、司机档案等)查询
   通信维护人员线路资料查询
   其他外勤人员移动性数据查询
   • 无线接入系统
   无线固定电话接入(WLL)
   无线IC卡
   无线磁卡电话
   火车、汽车、轮船等移动载体付费电话
   • 城市公用事业实时监控维护系统
   煤气调压站实时数据采集和自动控制
   自来水、污水管网实时监控和维护
   热力系统实时监控和维护
   电力系统城市中压电网实时监控和自动补偿


展开全文
优质商家推荐 拨打电话