6ES7231-7PD22-0XA8常规现货
6ES7231-7PD22-0XA8常规现货
随着我国改革开放,先进技术的不断引进、消化、吸收,可编程序控制器的使用日益广泛,各种型号、规格的可编程序控制器正渗透到产业控制的各行各业中,逐渐为大家所熟练把握。从我所几年来使用情况看,华光电子产业有限公司生产的PLC系列产品在性能价格比上占有一定上风,尤以中档产品SU-6型PLC为优。SU-6型PLC在我所设计的600T/h卸船机上的使用获得了成功,取得了一定的经验。现结合600T/h卸船机的使用情况,着重先容SU-6型PLC有别于其它同档PLC四钟指令的应用体会。
级式指令:
SU-6型具特色的指令就是级式指令,这是其它同档类型产品所没有的。用级式指令编的程序,CPU在工用时只扫描那些状态为ON的级而不扫描那些的状态为OFF的级。用级式语言编程的大好处就是使程序流程清楚,编程调试方便,并且通常可以缩短扫描短扫描周期。
600T/h卸船机的PLC主要控制起升、开闭、小车、变幅四机构的动作,控制起升、开笔电机协调动作,以保证生产时抓斗上升不开斗,下降不闭斗的要求,其中包括操纵方式的选择,操纵地点的选择,机构的连锁与保护,机构速度、电流显示,故障显示等。机构的限位保护由光电编码器及凸轮控制器或行程开关共同参与,实现双重保护。根据工艺要求,600T/h卸船机的级式程序框图:
编程初始,未用级式指令,整个扫描时间80ms以上,后采用级式指令编程,扫描时间降至50ms左右,从程序框图可看到:
1. 将只在上电初始对高速计数模块置初值得部分编为一个级,这个级在上电初始值完毕即完成使命,由于这一级主要由数据指令组成,固然SU-6型的基本逻辑指令处理速度为0.49us/条,但数据指令处理速度达20us~300us/条,所以上电以后即关断该级,可使速个扫描时间大大缩短。
2.将工艺要求中所具有的控制方式以及操纵点选择按级划分,通过对开关信号的判定,使机构运行在S11、S12、S13、S20、S30、S40六个级中的下一个级下,而其它的五个级均关断,这与不用级式指令比较,固然整个程序看上往较后者长,但实际CPU所扫描的执行程序比后者少,这样也就减少了程序的扫描时间。
3.将半自动方式下自动过程的每步编为一个级。500T/h卸船机其中之一的控制方式为半自动方式,再次方式下抓斗在动手区内抓满煤以后,手动操纵机构使抓斗上升至自动区后,机构则按如下过程顺序动作,不用司机操纵。
手动抓煤 上升自动升至上限停(S121) 自动陆行减速防摇开斗(S122)自动海行至抓煤点停(S123)自动下降之手动区停(S124)
将上述四个过程各自编成一 从2、3说明还可以看到,采用级式指令编程,使系统可以免于误操纵引起的误动作。另外对于600/h卸船机的多控制方式,采用级式编程可简化逻辑关系,便于读程序和调试程序。也使得输出线圈可以在不同级里出现,且不同时动作的级里内部继电器和定时器,计数器的使用是可以重复的,这样无形中增加了内部继电器和定时器/计数器的数目。
较接点指令:
SU-6型的指令系统中除了与其它同档产品一样具有数据比较指令外,还有比较接点指令。
数据比较指令实际是将累加器的内容与指令指定的数比较,比较的结果存在特殊寄存器中,这样在进行二数比较时,必须先读一数于累加器中,然后才能进行比较。SU-6型的比较接点指令,接点即为两数(数范围0~FFFF)的比较,比较结果的"真"或"假"直接反映了接点的"通"或"断",用起来很直观。在600T/h卸船机的控制中,使用光电编码器作为位置检测,即抓斗的位置以一定的计数值来体现,通过对这个计数值的大小判定来控制机构的运行。为使程序明了,大量使用这些比较接点指令,具体做法就是将光电编码器的计数值(存在一固定的数据寄存器中)作为被比较数,这是可变的,与一指定数据寄存器R中的数据比较,该数为机构所处一定位置时的计数值。如:用华光公司的编码器TRD-GK/100来检测抓斗的高度,并将光电编码器的计数值存放在R2414中,当抓斗在一定高度置高速计数模块初置后,随着抓斗的升降,R2414中的数据也将随着变化。在调试前根据抓斗置初值的位置先粗略计算所要控制的计数值,并将他们事先写进R2140~R2144中,调试可以在系统RUN运行状态,根据实际控制情况,通过S-01P强制修改这些数据寄存器中的数,便可很方便的使控制达到要求,而不需要修改程序。与这些控制点对应的凸轮控制器的接点通断见下表。表中所示I307、I310~I313分别对应的光电编码器的计数值。
从表中可以看出,通过使用比较接点指令,使用光电编码器的计数值作为位置控制,在程序中变得与离散的行程开关控制一样简单明了,而其控制精度却进步了,调整也比后者方便了。
设定值的T/C接点指令: 带设定值的T/C接点指令与比较接点指令有类似之处,实在质也是二数的比较接点指令,是定时器或计数器定义好的经过值与设定值比较,比较"真"或"假"同样直接反映了接点的"通"或"断"。在600T/h卸船机中将这类指令用于具有同一定时出发点的多点时间控制,如:在半自动控制方式中,小车自动陆行至煤斗上方卸煤,由于抓斗需一定时间,为进步效率,而又不撤煤,则要求小车和抓斗按如下时间控制:
具体编程时,可以使用二个定时器分开计时,也可以用带T设定值接点指令,而用一个定时器,该定时器作为开斗完的定时时间,小车延时停时间控制则用带设定值的接点指令,这样就比前钟方法减少了一个定时器。
由此可见,对于这种具有同一定时出发点的多点时间控制,可以值用一个定时器,定时器的设定值,只控制不带设定值的定时器触点的通断的时间,中间点的时间则通过对此定时器的经过值比较得到。使用时将所有设定值存放在数据寄存器中,调试时也可以和前面一样,在RUN运行状态,通过S-01P强制写进来修改时间设定值即可。
直接输进输出指令: 一般PLC的输进传送都是在执行指令前一次进行的,所以在执行指令的过程中没有状态变化,而输出则在执行完指令后进行。这样对于控制精度要求高,实时性也要求较高的系统就可能因扫描周期长满足不了要求。SU-6型PLC又一为其它类型PLC所没有的指令就是直接输进输出指令。使用直接输进指令时,输进状态表与通常输进一样,在扫描开始时由输进成批传送来更新,但在程序执行时,执行不取输进功能存储器表中的内容,而是取当时的输进状态条件来执行。使用直接输出指令时,输出功能存储器表与模块同时更新状态。在600T/h卸船机中,较多的使用直接输进指令。在该控制系统中,小车行走的位置信号,除了用光电编码器来获取外,还通过接近开关来获取。接近开关信号能否正确收到,首先与小车速度和小车上的感应块是非、扫描时间都有关系,在这些条件下,使用直接输进指令,就可正确及时接收接近开关的信号,但是直接输进/输出指令又不可太多,大量使用会加长扫描时间。
使用SU-6型PLC时,灵活的应用这几条指令,尤其是级式指令,可以大大缩短扫描时间,从软件设计上进步系统的可靠性,使调试变得简单方便,从而缩短调试时间。以上这些在600T/h卸船机的实际应用中,对于保证电厂(用户)按时发电,具有可观的经济效益。
1 引言
在电子设备日趋网络的背景下,目前广泛使用的以太网及TCP/IP协议已经成为事实上常用的网络标准之一,它的高速、可靠、分层及可扩充性使得它在各个领域的应用越来越灵活,很多情况下运用以太网和TCP/IP能够简化结构和降低本钱。目前关于嵌进式以太网的设计方案不是很多,其中大多是基于单片机的,缺点是速度慢、本钱太高。DSP作为一种特殊的嵌进式微处理器系统,具有嵌进的协处理器和用于快速数据处理的并行数据通道,在嵌进式网络设备中引进DSP技术可以使嵌进式以太网变得更快、更便宜、更轻易进行功能扩充。本文先容了基于TMS320LF2407型的嵌进式系统与LAN91C111型自适应10Mb/s/100Mb/s嵌进式以太网控制芯片的接口电路和实现方法。
2 LAN91C111
LAN91C111是SMSC公司为嵌进式应用系统推出的第三代快速以太网控制器。LAN91C111的芯片上集成了遵循SMSC/CD协议的MAC(媒体层)和PHY(物理层),符合IEEE802.3/802.U-100Base-Tx/10Base-T规范,其系统结构如图1所示。该以太网控制器的主要功能如下:
•自适应地选传输速率,支持10Mb/s/100Mb/s;
•充分支持全双工交换式以太网;
•支持突发数据传输;
•8k字节的内部存储器用作接收发送的FIFO缓存;
•增强式能量治理功能;
•支持总线8位、16位、32位的CPU访问;
•提前发送和接收。
LAN91C111以太网控制器遵循IEEE颁布的802.3以太网传输协议。其8-32位数据总线接口单元通过控制总线、地址总线和数据总线与外部的CPU相连。外部数据可以8位、16位或32位的方式与LAN91C111进行交换。该电路还集成了EEPROM接口,自举时再通过EEOROM接口输进到芯片中,从而实现自动初始化。总线仲裁器(Arbiter)用来监视以太网总线的数据交流情况,一旦发生阻塞,仲裁器一方面通过总线接口单元与外部CPU联系,另一方面控制内存控制单元(MMU),实现总线数据协调。内存控制单元可控制8kB动态SRAM的存储情况,实现与DMA控制器之间的数据联络。DMA控制器与总线控制器一起控制DMA与以太网协议处理器(EPH)之间的数据交换。以太网协议处理器(EPH)之间的数据交换。以太网协议处理器出来的数目经过10Mb/s/100Mb/s的物理层(PHY)直接到达以太网总线。
3 硬件电路组成
出于性价比的考虑,选用DSP控制器作为主CPU。TMS320LF2407是TI公司发布的一款高性价比的,适用于产业控制领域的DSP。该系列具有强大的指令系统、较强的灵活性、高速的数学处理功能及全新的内部结构,可广泛用于通讯、计算机、贸易、产业、军事等领域。TMS320LF2407是240X系列控制器zhonggong能强的一款,采用低功耗CMOS技术,具有30MI/s的执行速率,片上还集成了丰富的外围部件(EVM、A/D模块、CAN、SCI、SPI及JTAG)。TMS320LF2407的工作频率较高(40MHz),存贮空间较大(高达32k字的FLASH程序存储器,可扩展外部64k字存储器,64k字I/O寻址空间),非常适合处理复杂的TCP/IP协议。
由于LAN91C111是专为嵌进式系统设计的,因此,其外围电路相对比较简单。它和没有DMA传输性能的16位DSP(TMS320LF2407)及TG110-S050N2型电磁耦合变压器构成的嵌进式以太网结构如图2所示。图中,地址总线A1-A15相连。A0没有被LAN91C111使用,悬空;数据总线D0-D15相连,用于16位数据传输。LAN91C111端D16-D32悬空;LAN91C111的片选信号AEN由DSP的外部I/O接口选通讯号IS提供。二个元件的读电平RD、写电平WR分别相连。LAN91C111的中断输出信号INTRO送进DSP的外部中断脚XINT1触发中断。嵌进式以太网通讯模块的电路原理如图3所示。
4 软件设计
4.1 μC/OS II实时操纵系统的移植
μC/OS II是一种开放源码的实时嵌进式操纵系统,是一个可移植、可裁减、可固化的占先式多任务操纵系统,已被应用到多种微处理器中,其大部分源码是用ANSI C语言编写的。移植工作包括以下几个内容:
(1)用汇编语言改写OS_CPU_A.ASM文件
该文件包括4个子程序:_OSStartHighRdy、OSCtxSw、OSIntCtxSw和OSTickISR
随着CCD(电荷耦合器件)和CMOS(互补金属氧化物半导体)图像传感器制造工艺的发展,图像传感器的分辨率越来越高,假如要实时显示图像传感器采集到的图像,则要求图像处理芯片有较高的运行速度,但由于需要处理的数据量太大,一般的数字信号处理器很难直接输出分辨率为1024×768,帧频为60 Hz的标准XGA信号。这就需要对DSP输出的图像数据进行处理,使图像能够在VGA显示器上实时显示。市场上固然也有一些专门图像处理芯片,但其价格昂贵,且应用于特殊场合。本文设计的显示控制器可以达到提升帧频的功能,可使输进分辨率为1024×768,帧频为7.5HZ的YCbCr(4:2:2)图像信号提升到帧频为60HZ,并通过色空间转换,将YCbCr(4:2:2)图像信号转换成RGB格式的标准XGA信号,同时产生符合VESA标准的XGA格式的行、场同步信号,输出信号经D/A转换后可直接输出到VGA接口,从而可使图像传感器采集到的图像数据能够在VGA显示器上实时显示。
随着微电子技术及其制造工艺的发展,可编程逻辑器件的逻辑门密度越来越高,功能也越来越强,由于FPGA器件的可并行处理能力及其可重复在系统编程的灵活性,其应用越来越广泛。随着微处理器、专用逻辑器件、以及DSP算法以IP核的形式嵌进到FPGA中,FPGA可实现的功能越来越强,FPGA在现代电子系统设计中正发挥着越来越重要的作用。本文设计的显示控制器就是用VHDL语言描述,基于FPGA而实现的。该系统硬件框图如图1所示。
图1 系统硬件框图
1 显示控制器的设计
1.1 工作原理
图像传感器采集到的原始图像数据,经过A/D转换及DSP处理后,天生每秒7.5帧的图像数据,该数据是分辨率为1024×768的YCbCr(4:2:2)格式的16位图像数据。DSP输出到FPGA的信号有象素时钟,行、场参考,图像数据。FPGA在输进的行、场参考都有效时,在输进象素时钟的同步下,接收图像数据,并送进到SDRAM中, 同时从另一个SDRAM 中读取数据,并通过色空间转换,将YCbCr(4:2:2)信号转换成RGB信号。当SDRAM 中写满一帧图像数据时,控制器对两个SDRAM进行读、写切换。由于写数据速率小于读数据速率,所以在往一个SDRAM写满一帧图像数据的时间内,控制器能够连续多次从另一个SDRAM中读出另一帧图像数据,从而实现了进步帧频的目的。FPGA输出的RGB格式数据经D/A转换后,将数据转换成模拟信号,配合行、场同步信号可使其在VGA显示器上显示。外部晶振输进32.5MHZ的时钟,该时钟在FPGA内经时钟锁相环倍频后产生65MHZ的主时钟,用于对两个SDRAM进行读写和用来产生符合VESA标准的XGA格式的行、场同步信号。
1.2 控制器的内部模块先容
本设计采用模块化设计原则,按照现代EDA工程常用的“自顶向下“的设计思想,进行功能分离并按层次设计,用VHDL语言实现每个模块的功能。该显示控制器主要由以下七个功能模块组成:
用于从DSP接收数据的输进缓冲模块
用于对两个SDRAM进行读写切换的主控制器模块
SDRAM1的控制器模块
SDRAM2的控制器模块
用于产生标准XGA格式的时序发生器模块
用于从SDRAM中读取数据并配合行、场同步输出数据的输出缓冲模块
用于将YCbCr(4:2:2)转换成RGB格式的色空间转换模块。
该显示控制器的内部结构如图2所示。上电后,显示控制器首先对两片SDRAM进行初始化,初始化结束后,其它模块才开始工作。下面将具体先容各个模块的功能及设计思想。
图2 显示控制器的内部结构
1.2.1 数据输进缓冲模块
数据输进缓冲模块为深度为1024、宽度为16bit的异步FIFO (先进先出),写时钟为DSP输出的12MHZ的象素时钟,读时钟为经时钟锁相环倍频后的65MHZ的主时钟,通过场下降沿检测,来确保从一帧开始时接收数据。当输进的原始图像数据的行、场参考信号都有效时,该FIFO的写使能有效,在输进象素时钟的同步下,开始接收数据,写地址计数器为0到1023的循环计数器,当其计数到511或1023时,给主控制器发读信号,主控制器随后产生FIFO的读使能信号,使读使能信号在连续的512个读时钟周期内一直有效,即可连续读出512个数据。由于读时钟频率大于写时钟频率,所以不会产生数据写满溢出的现象。
1.2.2 主控制器模块
该模块为显示控制器的主要控制部分,通过对输进缓冲的读请求信号和输出缓冲的写请求信号处理,来实现对两个SDRAM的读、写切换。上电后,该模块接收从输进缓冲中读出的数据并将其写进到SDRAM 1中,同时从SDRAM2中读出数据,送进到输出缓冲中,当然初读出的数据为无效数据。当SDRAM1中写满一帧图像数据,即1024×768个有效数据后,该模块对两个SDRAM进行读、写切换,即将接收数据写进到SDRAM2中,同时从SDRAM 1中读出数据,一直按此规则进行读、写切换。两个SDRAM的读、写地址发生器靠主控制器内部的计数器来实现。
1.2.3 SDRAM控制器模块
该模块首先完成对SDRAM 的初始化,初始化过程为:上电后等待200 us,然后对所有BANK发预充命令,接着发出八个自动刷新命令,然后进行模式设置,模式设置时将SDRAM设置成连续的全页并发模式,即512并发。
初始化结束后,SDRAM进进正常工作状态,预备接收读、写命令。当SDRAM在空闲状态下,为保持其数据不丢失,必须对其进行定时刷新,一般要求64ms内刷新4096次,通常根据时钟频率,用计数器计时钟脉冲到15.625 us时,发自动刷新命令,但是当SDRAM在进行读、写进发时,自动刷新命令会打断读、写,从而造成数据丢失。该设计中,由于在64ms内对SDRAM至少进行4096次读、写操纵,所以可以不必对其进行刷新。
由于SDRAM被设置玉成页并发,预充命令可停止并发,所以当SDRAM读、写到511时,发出预充命令,来停止并发,同时封闭当前行,为下一次读、写作好预备。SDRAM初始化后,其状态转移图如图3所示。
1.2.4 时序发生器模块
该模块为输出行、场同步产生模块,利用FPGA内部时钟锁相环倍频后的65MHZ的主时钟产生符合VESA标准的分辨率为1024×768、帧频为60HZ的标准XGA格式的行、场同步信号,同时在行、场参考信号都有效时产生一个信号给输出缓冲模块,作为输出缓冲的读使能信号。根据VESA标准,分辨率为1024×768、帧频为60HZ的标准XGA信号的象素时钟为65MHZ,行同步信号的有效时间相当于1024个象素时钟周期,同步头宽度相当于136个象素时钟周期,前肩宽度为相当于26个象素时钟周期,后肩宽度为相当于162个象素时钟周期。场同步信号的有效时间相当于768个行周期长度,同步头为6个行周期长度,前肩为3个行周期长度,后肩为29个行周期长度。根据此标准,当行、场参考信号都有效时,一幅图像可输出1024×768个有效数据。
1.2.5 输出缓冲模块
该模块为深度为1024、宽度为16bit的异步FIFO(先进先出),写时钟和读时钟同为65MHZ的主时钟,SDRAM初始化结束后,该模块先从SDRAM2中读出1024个数据,然后才使时序发生器模块开始工作,当读使能有效时,在读时钟同步下,读地址计数器从0到1023循环计数,当计数器计到100或700时,该模块向主控制器模块发写请求命令,从而每次可从SDRAM中连续读出512个数据,由于在输出行、场消隐期间,读使能信号无效,所以,不会产生读空现象。
1.2.6 色空间转换模块
YCbCr色空间到RGB色空间的转换公式为:
其中Y的范围是(16,235),Cb、Cr的范围是(16,240),为了防止相减后为负出现溢出,对转换公式变形得:
用VHDL语言描述小数乘法时,通常是将小数扩大2的整数幂次方倍后,取整进行乘法运算,然后将结果进行移位操纵。当需要对运算结果进行四舍五进时,可以在运算时加0.5,然后对运算结果取整。下面将对R的运算过程进行描述,运算精度取11位。
R=(1.164Y+1.596Cr)-222.912+0.5
= (1.164Y+1.596Cr)-222.412
= (1/211) [(2384Y+3296Cr)-455499]
将方括号中的运算结果右移11位,即可得到R的值。Cb、Cr的运算过程与此类似。
色空间转换模块输出24bit RGB(8:8:8)信号,该信号经D/A转换后,配合时序发生器模块产生的行、场同步信号,即可在VGA显示器上显示。
色空间转换模块之所以放在输出缓冲模块后,主要是为了减少输进缓冲和输出缓冲模块中的先进先出及SDRAM的存储空间,如在相同精度下,SDRAM存储一帧图像将会占用1024×768×24bit的存储空间,色空间转换模块放在输出缓冲模块后,将会减少1/3的存储空间。
2 显示控制器的硬件实现
该显示控制器是基于Xilinx公司的Spartan-IIE系列FPGA XC2S300E-6-PQ208C设计实现的。此FPGA逻辑资源丰富,其内有30万个系统门,6912个逻辑单元(LC),1536个可配置逻辑快(CLB),64Kbit的块RAM,146个可用的I/O口,4个数字延迟锁相环(DLL)。块RAM可实现大量数据的内部存储,延迟锁相环可对时钟进行治理,可自动调整并消除输进时钟与FPGA内部时钟之间的相位偏移,同时还可实现对时钟的分频、倍频和移相。
用于帧缓存的两个SDRAM 的型号为HY57V281620HCST,此SDRAM 为Hynix公司生产的高速存储器,其内有四个Bank,每个Bank的存储空间为2M×16bit,可应用于需存储大量数据的场合。
3 结论
本文设计的显示控制用具有很强的灵活性,当输进图像格式改变时,只需在色空间转换模块做相应修改,便可实现不同格式图像的VGA显示。基于该显示控制器而研发的高分辨率监控摄像机、数字视频展台等产品可广泛应用在教育、银行、煤矿、交通、医疗等领域。
- 西门子SB1231热电偶信号板模块6ES7231-5QA30-0XB0授权中国总 一级代理商
- 西门子SB1231, 热电阻信号板模块6ES7231-5PA30-0XB0
- 西门子SB1231,模拟量信号板模块6ES7231-4HA30-0XB0
- 西门子S7-1200 SM1231 热电偶模块6ES7231-5QF32-0XB0
- -西门子SSM1231 热电阻模块 6ES7231-5PF32-0XB0授权中国总 一级代理商
- 西门子SM1231 热电偶模块6ES7231-5QD32-0XB0授权中国总 一级代理商
- 西门子SM1231 模拟量输入模块 6ES7231-4HF32-0XB0授权中国总代理商
- 西门子SM1231 模拟量输入模块6ES7231-5ND32-0XB0
- 西门子SM1231 模拟量输入模块6ES7231-4HD32-0XB0
- plc 全新模块 6ES7231-5ND30-0XB0支持模块级诊断和通道级诊断