全国服务热线 15221406036

西门子模块6ES7214-2AS23-0XB8当天发货

更新时间:2024-05-08 07:10:00
价格:请来电询价
联系电话:
联系手机: 15221406036
联系人:聂航
让卖家联系我
详细介绍

西门子模块6ES7214-2AS23-0XB8当天发货

1 引言

普通的计算机一般都配有并行接口(就是通常用的打印机接口),它是通过25芯的D型接头连接打印机与计算机的,计算机的并行接口不仅可以向打印机发送数据,还可以从打印机接收数据(打印的工作状态)。因此,利用计算机的并行接口,你可以去控制外部继电器的吸合,从而控制外部设备,同样可以利用它来检测外部设备的状态。不需添加任何硬件。从而使一台普通的计算机具有“PLC”的开关量的功能。
本文分析的系统,把普通并口实现了一个4输入8输出数字量的功能,切不需任何投资。们先对打印机的并行口做一下细致的分析。配有一个并口的计算机经系统引导后,初始化过程把并行端口配置成LPT1, 这个端口又分配了数据地址378H, 状态地址379H。其中378H端口做输出端口,379H端口做输入端口。

2 并口数据采集控制原理

(1) 端口378H,378H的管脚见表1。
在计算机通电后的自然状态,378H端口的每个数据位为1,表1中每个管脚对地(25脚)为高电平5V。即378H地址的内容为FF(十进制是255),当控制378H的内容为1(十进制)二进制码是00000001时,即2脚对地输出高电平,其它对地是0电平。如控制378H的内容为2(十进制)二进制码是00000010,即3脚对地输出高电平,其它对地是0电平。如控制378H的内容为3(十进制)二进制码是00000011,即2、3脚对地输出高电平,其它对地是0电平。依次类推。


当某管脚对地是高电平5V时,由于每条数据线的输出电流高达20mA,可以接5V的直流继电器,通过继电器的触点在去控制其它的设备,如电磁阀、电机等。图1是用打印机并行接口实现的继电器控制电路,此电路稍加修改即可用于其它设备的开关控制。
(2) 端口379H,379H的管脚见表2。



在计算机通电后的自然状态,379H端口的数据位第7位是0,其余每个数据位为1,即上述每个管脚对地(25脚)为高电平5V。即379H地址的内容为127(十进制)二进制码是01111111。当只把某管脚(如10脚)通过500Ω的电阻接到25脚,则它所对应的数据位是0,其它的数据位不变,则379H的内容为63(十进制)二进制码是00111111。当只把某管脚(如12脚)通过500Ω的电阻接到地25脚,则它所对应的数据位是0,其它的数据位不变,则379H的内容为95(十进制)二进制码是01011111依次类推。
图2是用打印机并行接口实现的开关检测控制电路,当K断开时,379H为127(十进制),当K闭合时,379H为111(十进制)二进制数是01101111,即13脚所连接的第4数据位为0。

3 软件实现



VB是一种可视化的编程语言,自面世以来,因简单易用倍受广大编程人员的青睐,作为一种非常方便的bbbbbbs95应用程序开发平台,可以实现bbbbbbs的绝大部分功能。
VB中没有专门的对并口的操作控件,要实现对并口的读写,需要对I/O进行操作,但对硬件进行访问以及利用各种控制接口板进行数据采集,仅靠VB是无法解决的。解决这样的问题可以间接使用动态链接库DLL(Dynamic bbbb Library)来实现。程序人员利用DLL可以实现应用程序共享代码和资源,DLL与用户的程序完全分开。
动态链接库(DLL)虽然是一个可执行模块,但它并不可以直接运行,它只是提供一群函数供bbbbbbs应用程序或其它动态链接库调用,以完成其特殊任务。由于动态链接库是在应用程序运行期间被连接起来的,故称为动态链接库。本设计用VC++设计了一个读写IO端口的动态链接库IO.DLL。
笔者利用VC++5.0开发的DLL的完整的程序清单如下:
∥DLL源文件I0.CPP
#include <bbbbbbs.h>
#include<conio.h>
int FAR PASCAL outport(unsigned)
short sport);
int FAR PASCAL outport(unsigned short port,int databyte);
∥D11EntryPoint函数
BOOL WINAPI D11EntryPoint
(HINSTANCE hD11,
DWORDdwReason,
LPVOID Reserved)

  switch(dwReason)

case DLL_PROCESS_ATTACH:
  {
    break;
  }
case DLL_PROCESS_DETACH:
  {
    break;
  }

return TRUE;

∥两个功能函数
int FAR PASCAL inport(unsigned short port)

  reture(_inp(prot);
)
int FAR PASCAL outport(unsigned short port,int databyte)

int a;
a=_outp(port,databyte);
return a;

∥模块定义文件I0.DEF
CODE PRELOAD MOVEABLE DISCARDABLE
DATA PRELOAD SINGLE
EXPORTS
inport
outport
动态链接库只有在别的模块中调用了它的某个函数以后,该动态链接库才发生作用。DLL函数或过程必须在全局模块(*.BAS)中正确说明才有效。VB是用Declare语句把一个DLL函数引入VB中的,它告诉VB在哪里找到DLL函数,并且让VB知道DLL需要哪种类型的参数,同时返回哪种类型的值。当某个DLL函数用Declare语句正确声明以后,就可以像使用其它函数一样使用这个DLL函数。
在VB应用程序的全局模块中声明I0.DLL并将其放入bbbbbbs\system目录下,这样就可以向使用bbbbbbs API一样使用I0中的inport(输入)和outport(输出)函数了。
Declare Function inport Lib"io.d11"
  (ByVal prot As Integer)As Long
Declare Function outport Lib"io.d11"
  (ByVal port As Integer,ByVal
  databyte As Long)As Long
下面的程序对图1和图2的例子进行设计。(只列出输入输出的读写操作程序)
  Private Sub 输入_Click
  X=inport(&H379)
  Print x
  End Sub
  Private Sub输出_Click
  y=outport(&H378,1)
  End Sub

4 结束语

并口25管脚中,作输出用的是2~9共8个管脚,作输入用的10、12、13、15共4个管脚,25脚地,利用并口可方便的实现了4入8出的开关量控制。
在上位机中采用VB等语言编程,利用计算机的并口,巧妙地实现PLC的开关量功能,而且可利用VB等语言的界面设计的功能,使系统做到监控一体。且系统不需额外的投资,使用灵活简单,可靠性高。

1 引言


在以可编程序控制器(PLC)为控制系统的生产设备中,往往建立了服务器-客户机的网络结构,两者之间的数据远程访问广泛的进行。现以GE Fanuc公司90系列的编程软件Cimplicity为例,对它的远程访问功能加以介绍。

2 远程访问


GE Fanuc 公司的CIMPLICITY HMI软件是基于Microsoft bbbbbbs NT和bbbbbbs 95的产品,使用bbbbbbs NT或bbbbbbs 95的远程访问特性就可以让一个在客户机上运行CIMPLICITY HMI软件的用户通过调制解调器访问服务器上的CIMPLICITY HMI工程数据。下面介绍其具体的步骤。

3 远程访问的设置步骤


3.1 服务器的设置(bbbbbbs NT)
对于一个运行bbbbbbs NT和CIMPLICITY HMI服务器软件的服务器,需要安装远程访问服务,然后配置远程访问服务器,使之自动启动,然后用户从客户机拨号登录。
(1) 安装远程访问服务
先打开Control Panel,双击Network图标,在Network对话框中选择Services属性页,点按Add。在Select Network Service对话框中从服务列表中选择Remote Access Service,然后点按OK。计算机就会开始安装了。软件安装完成之后,Remote Access Setup对话框自动打开,如图1所示:

图1 Remote Access Setup对话框


选择Configure,Configure Port Usage对话框打开如下。
对于服务器,Port Usage的小选择是Receive calls only。为调制解调器选择了端口用法后即可点击OK返回。


再选择Network。Network Configuration对话框打开。


确保选择Server Settings中的NetBEUI和TCP/IP。然后点击NetBEUI的Configure:


在RAS Server NetBEUI Configuration对话框中选择需要的客户访问类型,然后返回。再为配置TCP/IP,在RAS Server TCP/IP Configuration对话框中,在Allow remote TCP/IP clients to access下,选择希望的方式。选择Use static address pool,在Begin和End域中输入从网络管理员那里申请的两个连续IP地址。Begin地址被分配给服务器的调制解调器,End地址则分配给客户机。选择Allow remote clients to request a predetermined IP address。然后点击OK返回。进行了这些配置之后需要重新启动计算机。之后还需要配置自动启动和允许用户从客户机拨号登录功能。(2) 配置自动启动
远程访问服务的Startup Type在安装时被设为Manual。需要将其改为Automatic。那么首先打开Control Panel,双击Services图标,在Services对话框中双击Remote Access Server,在它的对话框中选择Startup Type为Automatic,点击OK返回即可。
(3) 给予客户拨入许可
从Start菜单选择Administrative Tools,从中打开Remote Access Admin程序,在该窗口中的Users菜单上选择Permissions。远程访问许可对话框就打开了。在对话框中确保所以需要作为客户拨入的用户都得到了拨入许可,就可返回。


3.2 客户机的设置(bbbbbbs NT)
对于运行bbbbbbs NT的客户(CIMPLICITY HMI浏览站),需要安装远程访问服务之后再配置拨号网络。
(1) 安装远程访问服务
同样先打开Control Panel,双击Network图标,在Network对话框中选择Services属性页。点击Add,在Select Network Service对话框中,从服务器列表选择Remote Access Service然后点击OK,计算机就开始安装了。
安装完毕之后,Remote Access Setup对话框会自动打开,选择Configure,Configure Port Usage对话框打开,在其中选择希望的调制解调器的端口用法,一般对于客户机而言,Port Usage的小选项是Dial out only。设置好后返回。再选择Network对其进行配置,在这里需要确保Dial out Protocols选择为NetBEUI和TCP/IP,然后依次返回。
(2) 安装完远程访问服务器后,还需要进一步配置拨号网络选项。先打开My Computer,双击Dial-up Networking图标,为希望连接的远程访问服务器添加一个项,即可。

3.3 客户机的建立(bbbbbbs 95)
对于运行bbbbbbs 95的客户机(CIMPLICITY HMI浏览站),首先要保证安装了NetBEUI和TCP/IP协议。步骤:打开Control Panel,双击Network图标,选择Protocols卡片,确保安装了这两个协议。然后配置拨号网络,步骤:打开Control Panel,双击Add/Remove Programs图标,在Add/Remove Programs Properties对话框中选择bbbbbbs Setup卡片,选择Communications,选择Details,在Communications对话框中,选择Dial-up Networking,然后点击OK。在Add/Remove Programs Properties对话框中点击OK。计算机就开始安装拨号网络选项了。安装完毕后,再配置它的属性。先打开My Computer,双击Dial-up Networking图标,为希望连接的远程访问服务器添加一个项。后配置网络属性,先打开Control Panel,双击Network图标,在打开的Network对话框中选择Configuration卡片。选择TCP/IP->Dial-up Adapter并显示其属性,然后做下列工作:
(1) 禁止DNS Configuration
(2) 让Gateway保持空白
(3) 对于WINS Configuration,选择DHCP for WINS Resolution
(4) 选择Obtain and IP address Automatically
(5) 对于Bindings,选择Client for Microsoft Networks
(6) 对于Advanced,选择None
再选择Identification卡片,为计算机输入一个名字,点击OK关闭Network对话框,保存所在的修改。
至此远程访问的客户就建立起来了。

3.4 配置HOSTS文件
由于RAS连接不支持CIMPLICITY HMI工程的广播方式,因此每台计算机(包括服务器和浏览站)的IP地址和结点名都必须配置到其它计算机的hosts文件中去。例如:在bbbbbbs NT环境下,可以在C:WINNT35system32 driversetc下找到hosts.sam文件,在bbbbbbs95环境下,可以在C:bbbbbbs下找到hosts.sam文件,只需要将hosts文件放在和hosts.sam同样的目录下即可。

4 举例说明
本文采用以下配置作为示例:
服务器:名称为Server61,并配有Microsoft bbbbbbs V4.0,CIMPLICITY HMI服务器软件,调制解调器,以太网IP地址为202.114.1.98,两个连续的IP地址-202.114.1.90和202.114.1.91-用于配置远程访问服务。
客户机:命名为Client62,并配有Microsoft bbbbbbs95,CIMPLICITY HMI浏览站软件,调制解调器。配置图示如图2所示:

图2 系统配置示意图

4.1 测试连接
当从客户端拨入服务器并建立连接后,可以进行如下的测试。
(1) 客户端测试
从客户机上要计算机名测试服务器,如下:
C:bbbbbbS>ping Server61
Pinging Server61 [202.114.1.98] with 32 bytes of data:
Reply from 202.114.1.98: bytes=32 time=103ms TTL=128
Reply from 202.114.1.98: bytes=32 time=101ms TTL=128
Reply from 202.114.1.98: bytes=32 time=99ms TTL=128
C:bbbbbbS
(2) 服务器测试
同理可以从服务器测试客户机,如下:
C:bbbbbbS>ping Client62
Pinging Client62 [202.114.1.91] with 32 bytes of data:
Reply from 202.114.1.91: bytes=32 time<10ms TTL=128
Reply from 202.114.1.91: bytes=32 time=1ms TTL=128
Reply from 202.114.1.91: bytes=32 time=1ms TTL=128
C:bbbbbbS

4.2 从客户机访问CIMPLICITY HMI工程
(1) 浏览一个点
在CimEdit中打开Select A Point浏览器时,Project域是空的,要想浏览服务器上的点需要在Project域中输入服务器的计算机名,如Server61。


联系方式

  • 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 邮编:201600
  • 联系电话:未提供
  • 经理:聂航
  • 手机:15221406036
  • 微信:15221406036
  • QQ:3064686604
  • Email:3064686604@qq.com