现场总线第4讲IO对象及其智能节点设计

上传人:汽*** 文档编号:591892168 上传时间:2024-09-18 格式:PPT 页数:40 大小:3.10MB
返回 下载 相关 举报
现场总线第4讲IO对象及其智能节点设计_第1页
第1页 / 共40页
现场总线第4讲IO对象及其智能节点设计_第2页
第2页 / 共40页
现场总线第4讲IO对象及其智能节点设计_第3页
第3页 / 共40页
现场总线第4讲IO对象及其智能节点设计_第4页
第4页 / 共40页
现场总线第4讲IO对象及其智能节点设计_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《现场总线第4讲IO对象及其智能节点设计》由会员分享,可在线阅读,更多相关《现场总线第4讲IO对象及其智能节点设计(40页珍藏版)》请在金锄头文库上搜索。

1、华东理工大学现场总线控制系统现场总线控制系统信息学院自动化系信息学院自动化系 凌志浩凌志浩第第4 4讲讲I/OI/O对象及其智能节点设计对象及其智能节点设计内容提要内容提要1. Neuron芯片的芯片的I/O对象对象2. 现场智能节点设计举例现场智能节点设计举例3. 通信节点设计举例通信节点设计举例华东理工大学1.Neuron 芯片应用I/O对象 1.1 Neuron芯片I/O对象类型I/O对象简单的讲就是一个定义的输入或输出波形,也可看成是存放在ROM中供用户程序访问的已编写好的固件例程,如同Windows编程中的各种控件,可直接使用。用户可通过io_out()和io_in()系统调用来访问

2、这些I/O对象,并在程序执行期间完成输入/输出操作。华东理工大学同步串行同步串行I/OI/O对象(对象(NeurowireNeurowire)Neurowire可实现与外部器件的同步全双工串行数据格式的传送,它可作为主控收发器(提供同步时钟)或被控收发器(接收同步时钟)。只要遵循SPI或NationalSemiconductorsMicrowireTM的接口器件,都可以作为Neurowire的外接器件。例如A/D、D/A以及显示驱动器等。华东理工大学1) 引脚配置如下: 主控方式主控方式 被控方式被控方式华东理工大学语法:语法: IO_8 neurowire masterslaveselect

3、(pin)timeout(pin) kbaud(const-expr)clockedge(+/-) io-name;(1)IO_8:必须指定IO_8,片选IO0-IO7。(2)master:由IO8提供时钟;slave:IO8为输入管脚,最大输入时钟为18kbps,占空比为50/50,此时Neuron输入时钟为10MHz。速度与输入时钟成正比。(3)select:为master指定片选管脚(IO0IO7)。数据输出前,片选为低电平,数据输出后为高电平。(4)timeout:为slave指定一个超时管脚(IO0IO7)每当Neuron芯片等待时钟的上升沿或下降沿时,将检查该管脚的逻辑电平。如果检

4、测到逻辑电平1,则传输被终止。这样就允许使用外部超时信号或内部生成的超时信号来限制传输的持续时间。(5)kbaud为master指定比特率,const-expr的结果可以为1,10,或20。对于10Mhz的Neuron芯片输入时钟缺省为20kbps。不能用于Slave。(6)clockedge(+/-):时钟信号的极性,缺省为上升沿 。华东理工大学2.1 节点组成方式和节点类型节点组成方式和节点类型宿主节点(仅靠宿主节点(仅靠Neuron芯片)芯片)基于基于HOST的节点(外加处理器)的节点(外加处理器)节点类型节点类型2. 现场智能节点设计现场智能节点设计华东理工大学2.2 节点设计的异同点

5、分析节点设计的异同点分析控制模块相同控制模块相同通信方式相同通信方式相同I/O调理电路各异调理电路各异应用程序描述和应用程序描述和I/O对象定义各异对象定义各异华东理工大学Neuron控制模块控制模块 对对MC143150芯片进行存储器扩展,利用芯片保留空间和用户可芯片进行存储器扩展,利用芯片保留空间和用户可用存储器空间扩展用存储器空间扩展20K的的RAM空间和空间和32K的的EEPROM程序存储空间,程序存储空间,用于存放和运行用户编制的应用程序。用于存放和运行用户编制的应用程序。华东理工大学2.3 Neurowire对象对象Neurowire可实现与外部器件的同步全可实现与外部器件的同步全

6、双工串行数据格式的传送,它可作为主双工串行数据格式的传送,它可作为主控收发器(提供同步时钟)或被控收发控收发器(提供同步时钟)或被控收发器(接收同步时钟)。只要遵循器(接收同步时钟)。只要遵循SPI或或National Semiconductors Microwire TM的接口器件,都可以作为的接口器件,都可以作为Neurowire的外接器件。例如的外接器件。例如A/D、D/A以及显示驱动器等。以及显示驱动器等。华东理工大学2.3.1 2.3.1 主控方式主控方式IO8引引脚脚输输出出同同步步时时钟钟,IO9 串串行行数数据据输输出出,IO10串串行行数数据据输输入入。引引脚脚IO9的的串串

7、行行数数据据输输出出和和引引脚脚IO10的的串串行行数数据据输输入入是是在在同同一一时时间间完完成成的的。默默认认是是在在同同步步时时钟钟的的上上升升沿沿串串行行数数据据输输入入和和输输出出,可通过程序可改为下降沿有效。可通过程序可改为下降沿有效。 IO0-IO7中中的的一一个个或或多多个个管管脚脚可可被被用用作作片片选选信信 号号 , 允允 许许 将将 多多 个个 Neurowire设设 备备 连连 接接 到到Neuron芯芯片片的的3总总线线上上。在在10Mhz输输入入时时钟钟的的Neuron芯芯片片上上,IO8输输出出的的同同步步时时钟钟速速率率可可指指定定为为1、10、20kbps。这

8、些值与输入时钟成正比。这些值与输入时钟成正比。华东理工大学2.3.2 2.3.2 被控方式被控方式( (从模式)从模式)IO8: 接收同步时钟接收同步时钟IO9:数据输出数据输出 IO10:串行数据输入串行数据输入输入输出在同一时间完成,输入输出在同一时间完成,默认上升沿完成。默认上升沿完成。IO0-IO7:超超时时引引脚脚,管管脚脚上上的的逻逻辑辑1电电平平使使Neruon从从属属I/O操操作作在在被被传传输输完完指指定定的的位位数数之之前前终终止止。这这样样就就防防止止了了Neuron芯芯片片看看门门狗狗定定时时器器由由于于外外部部时时钟钟传传输输的的位位数数比比要要求求的的位位数数少少而

9、而复复位位芯芯片片。无无论论在在主主控控还还是是被被控控方方式式,一一次次可可以以传传送送255位位的的数数据据,处处理理时时Neuron I/O挂挂起起应用程序处理,直到操作完成。应用程序处理,直到操作完成。华东理工大学2.4 增强型节点的结构增强型节点的结构单片机单片机Neuron芯片芯片IO_7IO_7IO_8IO_9IO_10P1.2P3.3P1.3P1.4现场应用:单片机现场应用:单片机与网络通信:与网络通信:Neuron芯片芯片单片机与单片机与Neuron芯片间的数据交换用芯片间的数据交换用Neurowire对象对象时钟片选华东理工大学单片机对单片机对Neurowire对象的模拟对

10、象的模拟给P1.4赋下一个要传送的比特时钟信号为高?P3.3=1?从P1.3取数据并保存时钟信号为低?P3.3=0?数据传送完毕?返回已传送的比特数,结束NYYYNN单片机单片机模拟从方式:模拟从方式:单片机在同步时单片机在同步时钟的上升沿从引脚钟的上升沿从引脚P1.3读取读取1位数据,位数据,同时从同时从P1.4输出输出1位数据。位数据。查询时钟输入信查询时钟输入信号的高低,实为查号的高低,实为查询时钟输入信号的询时钟输入信号的上升沿或下降沿上升沿或下降沿。华东理工大学2.5 现场智能节点设计现场智能节点设计2.5.1 节点的功能需求节点的功能需求8路模拟量输入路模拟量输入通信功能通信功能华

11、东理工大学2.5.2 节点的基本组成节点的基本组成华东理工大学MAX186的数据采集操作的数据采集操作 要启动MAX186进行一次数据采集(即A/D变换),首先需要把图8.7所示的一个控制字与时钟同步送入DIN。当为低电平时,SCLK的每一个上升沿把一个位从DIN送入MAX186的内部移位寄存器。在变低后第一个到达的逻辑“1”定义控制字节的最高有效位,在此之前与时钟同步送入DIN的任意个逻辑“0”位均无效。一个8位控制字的格式及意义如图所示。华东理工大学数据采集程序用软件方式控制一次数据采集(即A/D变换)的操作步骤可归纳为:设置图8.7所示的控制字TB1;使MAX186的变低;发送TB1,并

12、接收一个需忽略的字节RB1;发送全零字节,同时接收RB2;发送全零字节,同时接收RB3;将MAX186的拉高。上述过程得到的字节RB2、RB3是A/D变换的结果。在单极性输入方式下,得到的是标准二进制数;对于双极性输入方式下得到的是模2补码。两者所表示的数据均以最高有效位在前的格式输出。由于RB2、RB3两个字节所表示的二进制数据格式中,包含有1个前导零和3个结尾零,因此实际变换结果为:ADV=RB232+RB38华东理工大学IO_0outputbitADC_CS=1;/定义IO_0为位输出对象,作片选信号IO_8neurowiremasterselect(IO_0)ADC_IO;/定义神经元

13、I/O对象,用作双向串行接口unsignedshortC8=0,4,1,5,2,6,3,7;/顺序定义ADC的通道选择地址mtimertmAD=500;/定义毫秒定时器,以500ms为数据采集的间隔msg_tagmess_out;/定义报文标签when(timer_expires(tmAD)/当定时间隔500ms到时,驱动该事件处理程序inti,temp;unsignedintadc_info;unsignedlongADH;unsignedlongADL;unsignedlongADV8;for(i=0;i8;i+)/依次对8个通道进行数据采集/数据采集部分adc_info=(Ci+8)*1

14、6+14;/设置A/C变换控制字TB1io_out(ADC_IO,&adc_info,8);/发送TB1,忽略第一个字节RB1adc_info=0x00;/设置全零字节io_out(ADC_IO,&adc_info,8);/发送全零字节ADH=adc_info;/接收第二个字节RB2adc_info=0x00;/设置全零字节io_out(ADC_IO,&adc_info,8);/发送全零字节ADL=adc_info;/接收第三个字节RB3ADVi=ADH*32+ADL/8;/对本次采集数据进行换算tmAD=500;/设置500ms间隔华东理工大学该程序将8个通道的采集数据组成一个如下格式的显式

15、报文,并通过网络发送给网络适配器。msg_out.code远程智能采集装置的编号msg_out.data0发送的数据类型(88为采样数据)msg_out.data1发送的节点类型(2为远程智能数据采集装置)msg_out.data20通道采样数据的低8位msg_out.data30通道采样数据的高8位:msg_out.data2i+2 i通道采样数据的低8位msg_out.data2i+3 i通道采样数据的高8位:msg_out.data167通道采样数据的低8位msg_out.data177通道采样数据的高8位华东理工大学报文处理和发送msg_out.code=IO_Value;/设置远程装

16、置的编号msg_out.DATA0=88;/发送的数据类型,88为实时采样值msg_out.DATA1=NODE_TYPE2;/发送的节点类型msg_out.service=UNACKD_RPT;/设置报文的服务方式msg_out.tag=mess_out;/设置报文标签msg_out.dest_addr.no_address=BROADCAST;/设置目的寻址方式msg_send();/发送报文tmAD=1000;3. 通信节点设计通信节点设计 及相关软件开发及相关软件开发华东理工大学3.1 控制网络的基本结构控制网络的基本结构双绞线 PC监控机.AI或AODI或DO.AI或AORS-232

17、节点PC监控机通信节点通信节点其它仪表或仪器华东理工大学3.2 通信节点的功能通信节点的功能 通信节点是控制网络与监控用通信节点是控制网络与监控用PC机相互连接的适配接口,机相互连接的适配接口,是实现分布系统信息收集、数据处理、现场智能节点动作控制是实现分布系统信息收集、数据处理、现场智能节点动作控制等功能的枢纽,在通信过程中起着关键作用。当然,要实现这等功能的枢纽,在通信过程中起着关键作用。当然,要实现这些功能,智能网络适配器的设计需要以些功能,智能网络适配器的设计需要以Neuron神经元多处理神经元多处理器芯片为核心,用来加强和改善通信管理,节省占用器芯片为核心,用来加强和改善通信管理,节

18、省占用PC机的机的时间;利用采用曼彻斯特编译码方式的收发器,实现与网上时间;利用采用曼彻斯特编译码方式的收发器,实现与网上各智能节点之间的双向数据通信;用双口各智能节点之间的双向数据通信;用双口RAM充当通信过程充当通信过程中现场信息的接收、发送缓冲区,完成最近发送到达的交换数中现场信息的接收、发送缓冲区,完成最近发送到达的交换数据的存储转发功能,实现网络与据的存储转发功能,实现网络与PC机之间的数据传输,缓解机之间的数据传输,缓解和避免系统缓存的紧张和瓶颈的产生,保证数据的实时畅通;和避免系统缓存的紧张和瓶颈的产生,保证数据的实时畅通;用非易失性存储器用非易失性存储器EEPROM存放存放Lo

19、nTalk网络协议固件、多任网络协议固件、多任务调度程序、网络适配器通信管理程序以及网络配置信息等。务调度程序、网络适配器通信管理程序以及网络配置信息等。 华东理工大学3.3 3.3 通信节点(通信节点(LonWorks-PC接口、接口、网络适配器)的基本组成器件网络适配器)的基本组成器件Neuron芯片芯片LonWorks总线收发器总线收发器程序存储器、数据存储器程序存储器、数据存储器双口双口RAM华东理工大学基于基于ISA总线的通信节点结构总线的通信节点结构PC机EEPROMService电路Neuron芯片双口存储器 收发器ISA总线 LonWorks总线华东理工大学 在这类应用系统中,

20、实际上仅在这类应用系统中,实际上仅把把Neuron芯片作为通芯片作为通信处理器信处理器用,由其按照用,由其按照LonTalk协议与协议与LonWorks网络网络上的所有智能节点进行通信;而让上的所有智能节点进行通信;而让数据处理、高级监数据处理、高级监控等复杂应用程序放在控等复杂应用程序放在PC机上机上运行。因此,智能网络运行。因此,智能网络适配器的通信管理程序严格来说应包括两大部分:其适配器的通信管理程序严格来说应包括两大部分:其一是一是由运行在由运行在Neuron芯片上的网络接口软件实现芯片上的网络接口软件实现15层层LonTalk协议协议,其二是,其二是由由PC机应用系统的网络驱动程机应

21、用系统的网络驱动程序和应用程序实现序和应用程序实现67层层LonTalk协议协议。这样,。这样,PC机应机应用系统可依赖网络驱动程序来实现与网络接口协议有用系统可依赖网络驱动程序来实现与网络接口协议有关的功能,而网络驱动程序则采用关的功能,而网络驱动程序则采用PC机的接口硬件机的接口硬件(即智能网络适配器上的双口(即智能网络适配器上的双口RAM)与网络接口(即与网络接口(即智能网络适配器上的智能网络适配器上的Neuron芯片)进行通信。芯片)进行通信。 应用模式应用模式华东理工大学PC机LonWorks网络 收发器接口I/O接口驱动程序接口PC机应用程序网络驱动程序PC机接口网络接口华东理工大

22、学 网络适配器软件负责监控计算机与现场节点网络适配器软件负责监控计算机与现场节点之间数据的之间数据的“上传下达上传下达”,当节点数据到达时,当节点数据到达时,适配器接收节点数据并按预定软件协议写入双口适配器接收节点数据并按预定软件协议写入双口RAM数据区中,提供给监控计算机用于计算、分数据区中,提供给监控计算机用于计算、分析、显示、打印;同时当监控计算机须对节点进析、显示、打印;同时当监控计算机须对节点进行运行参数设置时,监控软件通过行运行参数设置时,监控软件通过PCI总线控制器总线控制器把运行参数写入双口把运行参数写入双口RAM参数区,参数区,Neuron通过标通过标志位判断是否有参数设置,

23、如果有,把参数数据志位判断是否有参数设置,如果有,把参数数据组成参数报文发送给现场智能节点。组成参数报文发送给现场智能节点。 华东理工大学双口双口RAM访问控制访问控制 当当数数据据从从现现场场监监控控单单元元以以显显式式报报文文的的形形式式发发送送到到监监控控计计算算机机网网卡卡时时,Neuron芯芯片片通通过过总总线线收收发发器器把把数数据据读读入入,进进行行相相应应的的格格式式转转换换和和必必要要的的运运算算后后,按按规规定定的的软软件件协协议议写写入入双双口口RAM中中。当当然然,在在访访问问双双口口RAM时时,需需要要知知道道其其存存储储单单元元的的有有效效地地址址,此此时时需需对对

24、双双口口RAM存存储储区区进进行行寻寻址址,其其中中Neuron对对双双口口RAM的寻址算法定义为:的寻址算法定义为:EAF(t,n,d);F即为地址换算函数,它与现场监控单元的类型、地址和通道即为地址换算函数,它与现场监控单元的类型、地址和通道等信息有关。其中等信息有关。其中EA代表有效地址,代表有效地址,t为现场监控单元类型,为现场监控单元类型,n为现场监控单元地址,为现场监控单元地址,d为现场监控单元中所对应的通道号。为现场监控单元中所对应的通道号。 华东理工大学 if(msg_in.data0= =1)/判断报文类型判断报文类型p=(unsigned int *)DRAM2;/数据存储

25、在双口数据存储在双口RAM2中中for(i=0;i4;i+)*(p+5*nodeno+i)=msg_in.datai+1;/存储规则存储规则*(p+nodeno*5+4)=1;nowonlinenodeno=1;if(msg_in.data0= =2)/判断报文类型判断报文类型p=(unsigned int *)DRAM1; /参数存储在双口参数存储在双口RAM1中中for(i=0;i16;i+)*(p+16*nodeno+i)=msg_in.datai+1;/存储规则存储规则华东理工大学网络接口软件网络接口软件 网络接口软件需完成两个主要任务:其一,采用网络接口软件需完成两个主要任务:其一,

26、采用事件驱动方式事件驱动方式,监视网络中各现场智能节点传送来的,监视网络中各现场智能节点传送来的显式报文,负责将其转换成规范的数据表示格式,通显式报文,负责将其转换成规范的数据表示格式,通过寻址算法的定位后再将其存入双口过寻址算法的定位后再将其存入双口RAM中的对应单中的对应单元,供网络驱动软件读取后,转发给元,供网络驱动软件读取后,转发给PC机的应用程序;机的应用程序;其二,利用其二,利用定时中断方式定时中断方式,查询,查询PC机有无命令或参数机有无命令或参数需要下达的标志信息,及时从双口需要下达的标志信息,及时从双口RAM的命令区读取的命令区读取PC机下达给现场智能节点的命令或参数,完成显

27、式报机下达给现场智能节点的命令或参数,完成显式报文的打包处理后,以广播方式发送到网上,让相关的文的打包处理后,以广播方式发送到网上,让相关的现场智能节点予以接收。现场智能节点予以接收。 华东理工大学 在在网网络络接接口口软软件件中中,极极为为重重要要的的一一个个环环节节是是对对双双口口RAM单单元元的的访访问问,在在此此主主要要运运用用Neuron C语语言言中中的的指指针针来来实实现现。下下列列的的程程序序段段示意了示意了Neuron芯片对双口芯片对双口RAM 的读写方法。的读写方法。#define BYTES 256 /设置单元数unsigned int *pnc; /定义指针unsign

28、ed long NCBaddr = 0xD000;/基地址unsigned int i; /定义循环变量for(i=0;iBYTES;i+) /读写存储器单元.pnc=(unsigned int *)(NCBaddr+i);/指针指向某一单元*pnc=NCWBuffer; /写存储器单元.NCRBuffer=*pnc; /读存储器单元.华东理工大学网络驱动软件网络驱动软件网络驱动软件主要是通过对双口网络驱动软件主要是通过对双口RAM的直接访问,的直接访问,实现实现PC机与网络接口之间的数据交换功能。机与网络接口之间的数据交换功能。 对双口对双口RAM单元的频繁访问过程采用时钟中断方式单元的频繁

29、访问过程采用时钟中断方式驱动。驱动。 华东理工大学 通信节点软件流程通信节点软件流程 PC侧软件操作过程是PC侧操作设置节点参数把参数按协议写入双口RAM中并设置相应标志位读取双口RAM中的节点运行数据提供给监控系统使用否定时时间到是否Neuron 芯片侧操作定时时间到是读标志位读取报文Neuron 芯片侧软件操作读取双口RAM中的参数组成报文发送按软件协议把节点数据写入双口RAM有报文到有参数设置是是设置数据到标志位华东理工大学function ReadWMem(Segment:word;Offset: Word): Word; / Segment:段地址;Offset:偏移地址varAdd

30、ress: LongWord; /定义局部变量 beginAddress := Segment shl 4 + Offset; / 物理地址=段地址左移4位+偏移地址asm /asm与end间的为汇编语言PUSH EBX /入堆栈MOV EBX, Address /指向地址单元MOV AX, EBX /读地址单元内的数值MOV Result, AX /函数返回值POP EBX /出堆栈end;end;读函数读函数华东理工大学ProcedureWriteWMem(Segment:word;Offset:Word;Value:Word); /Segment:段地址;Offset:偏移地址varAd

31、dress: LongWord; /定义局部变量beginAddress := Segment shl 4 + Offset; / 物理地址=段地址左移4位+偏移地址asm /asm与end间的为汇编语言PUSH EBX /入堆栈MOV EBX, Address /指向地址单元MOV AX, Value /把数值赋给寄存器MOV EBX, AX /把数值写到地址单元内POP EBX /出堆栈end;end;写过程写过程华东理工大学网络适配器通信管理软件(数据区分配)网络适配器通信管理软件(数据区分配)华东理工大学在在访访问问双双口口RAM实实时时数数据据库库时时,首首先先需需要要知知道道存存储

32、储单单元元的的有有效效地地址址,即即进进行行存存储储单单元元寻寻址址。PC机机对对双口双口RAM的寻址算法为:的寻址算法为: EA1=f1(SA,OA) OA=g(s,n,t,d)Neuron芯片对双口芯片对双口RAM的寻址算法为:的寻址算法为: EA2=f2(n,t,d)式中,式中,EA1和和EA2代表有效地址(代表有效地址(Effective Address),),SA代表段地址(代表段地址(Segment Address),),OA代表偏移地址(代表偏移地址(Offset Address););s为子网号,为子网号,n为节点编号,为节点编号,t为节点类型,为节点类型,d为寻址区域。为寻址区域。寻址算法寻址算法华东理工大学本讲结束!本讲结束!

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号