登录
|
注册会员
开启辅助访问
设为首页
收藏本站
扫一扫关注官方微信
论坛
BBS
M币充值
M currency prepaid phone
M币获取
附件中心
搜索
search
全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
MCU资讯论坛
»
论坛
›
单片机论坛
›
51单片机论坛
›
基于ARM与μClinux的RTU设计
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版
基于ARM与μClinux的RTU设计
[复制链接]
1591
0
ad***
管理员
发表于 2012-9-3 02:19:16
|
查看全部
|
阅读模式
本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要
登录
才可以下载或查看,没有帐号?
注册会员
x
在电力系统变电所以及电气化铁道牵引变电所远动控制系统中,远程数据采集与监控终端(RTU)是关键设备,实现遥控、遥测、遥信等功能。
采用工业控制计算机,扩展测控硬件接口电路,是RTU设计常见的方法,但是这种方法设计的RTU成本高、体积大、耗电大。采用80C196等
单片机
设计RTU,由于单片机的运算处理和硬件扩展等能力较低,影响RTU的性能。而基于
ARM
处理器设计的RTU,硬件上具有成本低、体积小、耗电省、处理能力强等优点;软件上由于采用μClinux操作系统,有许多优秀的应用程序成果可以利用。正是由于这些优势,采用arm和μClinux设计RTU已经成为一个热点[1]。
1 RTU硬件电路设计
1.1 RTU总体结构
RTU的核心部分是计算机,包括处理器、存储器、人机接口等。为了执行RTU的测控功能,需要扩展大量外围接口电路。不同变电所的测控对象数量差别很大。为了提高RTU的通用性,一种普遍采用的可行的办法是将测控电路模块化。根据模块化的设计思想以及S3C4510B[2]和μClinux[3]的特点,RTU硬件总体结构设计的原理框图如图1。
各种电路按功能设计成相应模块,以母板总线为接口基础。
主板模块以S3C4510B为核心。主要配置是:16M字节动态随机存储器SDRAM(两片HY57V651620B),2M字节的Flash(一片AM29LV160DB);处理器内部集成两个异步串行通信接口,串口0和串口1;一个10Mbps以太网接口;看门狗与复位电路(MAX507);RTU母板总线驱动电路。
串口0作为控制台,用于调试;串口1接LCD显示屏和触摸屏,实现当地监控的人机界面。
测控接口电路主要有遥控模块、遥信模块(开关量采集)和遥测模块(模拟量采集)。遥控和摇信模块由母板总线直接扩展。遥测模块采用现场总线(CAN)通信接口。为此在RTU母板总线上扩展CAN总线通信模块,实现与遥测模块的通信。
串口模块(PC16C550)从母板总线上扩展。用该模块连接调制解调器(MODEM),实现RTU远程通信。
1.2 RTU母板总线
RTU母板总线是测控硬件模块扩展的基础,又是处理器总线上的一个外设接口。
为便于模块的扩展,RTU母板总线定义如下:数据总线H-D0~H-D7;地址总线H-A0~H-A7;地址片选信号H-S0~H-S6;读写控制信号H-WR和H-RD;地址锁存控制信号H-ALE;中断服务请求控制信号H-INT0~H-INT3;复位信号H-RESET。
使用处理器的如下总线信号驱动RTU母板总线:地址总线A0~A11、数据总线D0~D7、读使能控制信号nOE、写使能控制信号nWBE0、外设(I/O)地址片选信号nECS0,以及4根中断控制信号线nINREQ0~nINREQ3。
1.2.1 总线驱动电路
为兼容测控接口电路较常用的器件,母板总线按照5V的TTL电平设计。S3C4510B总线是3.3V的CMOS电平。
处理器总线与RTU母板总线存在速度和电平上的差别,不能直接相连,它们之间需要一个总线驱动电路。
总线驱动电路是主板模块的一部分。它实现处理器总线到RTU母板总线的接口扩展、电平转换和驱动。总线驱动接口电路如图2。
采用双电源供电的双向总线缓冲器74LVX4245,实现处理器数据总线与RTU母板数据总线之间的电平转换和驱动。
三八译码器U1,将2K字节地址空间译为8个地址片选信号,称为S0~S7,其中S0~S6由总线驱动芯片74LS244驱动后,作为RTU母板总线地址片选信号。
1.2.2 地址锁存信号ALE实现
一些常用的芯片,如CAN总线控制器SJA1000、时钟芯片DS12887等,内部带一个地址锁存器,需要地址锁存信号ALE,才能实现接口。S3C4510B没有ALE信号,所以母板总线扩展ALE信号,才能实现这类器件的接口。
将U1的一个地址片选信号S7取反,写数据到S7地址,可以模拟出ALE控制信号,并实现ALE的功能。
1.2.3 RTU母板总线的地址和访问速度
RTU母板总线作为处理器的一个外设,其地址和访问速度由处理器决定。
S3C4510B总线统一编址。nECS0是外设地址片选信号,占外设地址空间起始的16K字节。
nECS0接U3使能端,决定RTU母板总线的基地址和访问速度。S3C4510B控制寄存器EXTDBWTH第20位置1、21位置0,表示nECS0按8位方式寻址。寄存器REFEXTCON的低10位设为0x360,则nECS0的基地址是0x3600000。
置控制寄存器EXTACON0为0x0fff,则S3C4510B对RTU母板总线的读写时间是7个CPU时钟周期。
1.3 基于RTU母板总线的模块扩展
图3是扩展CAN总线通信模块的电路原理图。CAN总线模块以SJA1000为核心,通信数据经高速光电耦合器G1、G2隔离,82C250驱动,从接线端子J2连接到外部CAN总线。P1是1W的5V转5V的DC/DC电源模块。CAN模块使用H-S0作为片选信号,其基地址是0x3600000。
图3给出了SJA1000与RTU母板总线的连接关系。SJA1000总线兼容TTL电平,数据总线和中断信号线有驱动能力,可以直接与母板总线接口。由图3可见,从RTU母板总线上扩展测控电路简单方便。
基于母板总线的其它模块扩展方法类似。
2 RTU软件设计
μClinux从linux操作系统改进而来,适合运行在S3C4510B这种无内存管理单元MMU的处理器中。基于工控机-linux的RTU程序,可以很方便地移植到arm-μClinux设计的RTU中。
RTU程序的开发,包括应用程序开发和驱动程序开发两部分,全部采用C语言编写。
2.1 RTU应用程序调试
使用JTAG仿真器工具和相应工具软件,将μClinux操作系统烧写到主板模块的Flash中。μClinux在主板模块上运行后,可以使用μClinux提供的工具软件在Flash上更新自身及应用程序。
连接PC机的串口与主板模块的串口0。用Windows超级终端,与主板模块建立交互关系。将主板模块与PC机接入同一个局域网,配置合适的IP地址。
使用文件传输服务工具FTP或TFTP,将PC机编译的μClinux应用程序下载到主板模块/ramdisk目录中,改为可执行属性后执行。应用程序中加入printf()函数,输出执行过程中的调试信息。
2.2 JFFS2文件系统应用
JFFS2(The Journalling Flash File System, version 2)是一种为嵌入式系统Flash存储文件而设计的文件系统。μClinux编译选项,加入JFFS2文件系统。将2MB的Flash分成mtd0和mtd1两个区,各为1MB。mtd0是从0地址开始的存储空间,用于存储μClinux操作系统镜像文件。mtd1用于存储应用程序。μClinux的/dev目录中,有字符型设备文件mtd0、mtd1和对应的块设备文件mtdblock0、mtdblock1。
有了JFFS2文件系统支持,使用文件拷贝操作方法,即可将RTU的操作系统和应用程序在Flash上更新。RTU的开发和现场调试,可以脱离JTAG仿真器工具,给RTU开发和维护提供了方便。
2.3 更新μClinux的步骤
(1)用FTP传输操作系统文件IMAGE.ROM到/ramdisk/目录;(2)擦除mtd0分区:eraseall /dev/mtd0;(3)将IMAGE.ROM写入mtd0:cp/ramdisk/IMAGE.ROM/dev/mtd0。
当提示操作完成后,复位主板模块即运行新的操作系统。由于μClinux操作系统在SDRAM中运行,更新操作系统过程中不能停电。
2.4 应用程序在Flash上的更新与执行
(1)安装mtd1分区:mount-t-jffs2 /dev/mtdblock1/mnt。此操作将mtd1分区按块设备方式安装在μClinux的/mnt目录中。在/mnt目录中添加的文件,存储在Flash中,不会因掉电而丢失。(2)将应用程序myapp下载到/ramdisk目录,然后cp /ramdisk/myapp /mnt。即完成了应用程序在Flash上的更新。(3)修改文件属性:chmod 755 /mnt/myapp。(4)执行文件:./mnt/myapp。
μClinux启动后,读取并执行/proc/rc文件中的命令。要使myapp应用程序自动执行,在rc文件中,加入
mount -t jffs2 /dev/mtdblock1 /mnt
./mnt/myapp
系统启动后,自动安装mtd1分区,执行应用程序myapp。
基于本文设计的RTU,连接到一个电网数据采集与监控系统,经试运行,性能稳定可靠。证明文中设计的RTU的原理是正确的。
本文章来自中国IT实验室
http://embed.chinaitlab.com/
控制系统
,
计算机
,
数据采集
,
变电所
,
接口
相关帖子
智能阀门定位器在石油化工装置自动化控制系统中的应用
单片机驱动液晶显示屏的控制系统设计(资料)
飞凌嵌入式亮相2014工业计算机及嵌入式系统展
飞凌嵌入式OK335xS-II样板免费申请活动持续进行!
求助安装USB-JTAG软件在JZ2440开发板ARM9系统上
PLC控制系统设计的基本原则
一种扩展微处理器/单片机外部中断接口的方法
高薪诚聘单片机软件工程师15K-20K
500毫安USB接口兼容的锂电池充电集成电路CN3068
基于单片机的电子彩灯控制系统设计
举报
回复
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖后跳转到最后一页
回复
转播
评分
分享
打开支付宝扫一扫,最高立得1212元红包
搜索
本版
帖子
用户
热搜:
传感器
51串口程序
电子管放大器
夾式電表
夾式電流
Mentor论坛
打印机
版块推荐
百宝箱
My 布拉格
无边框Z9
Z9Max
Z9mini
nubia动态
问题 & 建议
资源分享
爱拍
同城会
牛仔生活
查看论坛所有版块>>
每日签到
论坛任务
摄影技巧
跳蚤市场
互助问答
论坛导读
申请内测
红包中心
每日摇一摇
活动中心
网站地图
官方旗舰店
图文热点
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
可支持14×4的点阵LED显示面板数码管LED驱
VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁 存
数显驱动器原厂-数显LED显示驱动芯片VK1620
VK1620B是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、 数据锁
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
产品品牌:永嘉微电/VINKA 产品型号:VK1618 封装形式:SOP18/DIP18 概述 VK161
更多
精华推荐
抗干扰LED数码管显示屏驱动芯片/3线串行接
抗干扰能力强/点阵数显LED屏驱动/数码管驱
可支持14×4的点阵LED显示面板数码管LED驱
数显驱动器原厂-数显LED显示驱动芯片VK1620
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
VK1616 SOP16/DIP16点阵LED数显驱动芯片/数
点阵数显驱动芯片/LED数码管显示屏驱动VK16
数显驱动电路LED显示驱动芯片VK1650 SOP16/
更多
社区学堂
抗干扰LED数码管显示屏驱动芯片/3线串
抗干扰能力强/点阵数显LED屏驱动/数码
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
可支持14×4的点阵LED显示面板数码管LED驱
VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁 存
更多
客服中心
QQ:187196467
服务时间:周一至周日 8:30-20:30
在线客服
客服微博
产品咨询
售后中心
关注我们
关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
QQ:187196467
周一到周日 8:30-22:00 (全年无休)
7 x 24小时在线客服
手机版
Powered by
MCUZX!
X3.4 © 2008-2015
MCU资讯论坛
版权所有
京ICP备18035221号-2
客服QQ: 187196467
技术支持:
MCU资讯论坛
|
网站地图
快速回复
返回顶部
返回列表