最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

AMOS-6000工控机多屏显示的设计及应用

IT圈 admin 48浏览 0评论

2024年4月9日发(作者:幸祺福)

第28卷第5期

Vol.28 No.5

    

文章编号:1005-8451(2019)5-0037-04

方法与应用

Method and Applicatio

AMOS-6000工控机多屏显示的设计及应用

邱锡宏,秦玉利

(北京全路通信信号研究设计院集团有限公司,北京 100070)

摘 要:

计算机联锁系统的操作显示界面需完整显示所控制对象的站场形状,对于规模较大的站

场,单台显示器的显示效果较差,图形、文本紧缩,不便于操作和识别。通过将AMOS-6000工控机的多

屏显示硬件高清视频接口(HDMI)修改为视频图像阵列(VGA)接口方式,针对DOS系统,采用基本

输入输出系统(BIOS)驱动和基本图像接口(BGI)文件,实现多台显示器组合显示图形。该方案在京

沪既有普速铁路线的工程实践中得到应用,满足铁路枢纽车站、编组站等大型站场的操作显示需求。

关键词:

多屏显示;AMOS-6000工控机;计算机联锁

中图分类号:

U284.3∶TP39

文献标识码:

A

Multi-screen display for AMOS-6000 industrial person computer

( Beijing National Railway Research & Design Institute of Signal & Communication Group Co. Ltd.,

Beijing 100070, China

Abstract: The operation interface of computer interlocking system needs to display the shape of the station and yard

of the controlled object. For large-scale stations, the display effect of single display is poor, the graphics and text are

compact, and it is not easy to operate and recognize. By modifying the multi-screen display hardware HDMI of AMOS-

6000 industrial person computer to the video graphics Array (VGA) interface mode, the basic input and output system

(BIOS) driver and basic graphics interface (BGI) file were used to implement the combination display of multiple

displays for the DOS system. The scheme was applied in the engineering practice of Beijing-Shanghai existing general

speed railway line, could meet the operation and display requirements of railway hub stations, marshalling stations and

other large stations.

Keywords: multi-screen display; AMOS-6000 industrial person computer; computer interlocking

QIU Xihong, QIN Yuli

目前,计算机联锁系统中铁路车站站场图形采

用固定分辨率、固定图元尺寸的显示方式,当站场

图形超过一台显示器的显示范围时,需要使用多个

显示器分别显示全部站场图形的不同区域

[1]

铁路的计算机联锁厂家多屏显示主要有两种

方式:

(1)通过单台机器中装载多屏卡的方式;

(2)通过多台机器进行多屏的显示。

第1种方式涉及多屏卡显卡与机器兼容性问题,

第2种方式涉及到多台机器显示同步及同一鼠标跨

屏操作等问题。本文选用第1种方式:采用单台机器,

通过主板集成显示系统进行多屏显示。该方法能较

好地解决上述问题,更好地满足使用和维护的需要

[2]

收稿日期:2018-05-30

基金项目:中国铁路总公司重大课题(2016X003-E)

作者简介:邱锡宏,高级工程师;秦玉利,高级工程师。

1 多屏显示

根据站场图形规模,可将站场图形显示于1个、

2个或3个显示屏,显示模式支持Clone模式以及

Split分屏模式

[3]

1.1 常用显示模式

1.1.1 Clone模式

每个屏幕均显示相同的内容,该模式简称为:

AAA。适用于仅需要单屏显示的站场图形场景。

1.1.2 Split模式

站场图形扩展显示在多个屏幕上,每个屏幕显

示站场图形的一部分,显示模式简称为:ABC。适

用于需要双屏或三屏显示的站场图形场景(当为双

屏时,第3屏不显示)。

显示模式支持横屏显示与竖屏显示,满足站场

图形横向扩展与纵向扩展的需求。

RCA

2019.5总第266期

37

方法与应用

铁 路 计 算 机 应 用

2019年5月

当该计算机为既有在用设备时,针对DOS系统,

还需要满足下述需求。

1.2 现场既有在用设备需求

(1)DOS系统下,在启动文件中

增加多屏驱动软件。该软件具备加载多屏显示或卸

载多屏显示的功能。

(2)应用软件中,每个显示屏的图形坐标均从(0,

0)开始。

(3)通过应用接口软件,指定屏幕后进行图形

显示

[4]

(4)单屏、双屏、三屏显示均采用支持C语言

接口的文件,文件版本为2.4,支持

256色模式。

2 设计方法

(1)铁路车站通常采用视频图像阵列(VGA)

接口的显示器,标准主板提供一个VGA接口,两

个高清视频接口(HDMI),需要设计转换电路,将

HDMI转换为VGA接口

[5]

(2)标准主板只支持一种显示模式,对于提供

三屏接口的主板,默认显示模式为“AAA”模式,

通过修改基本输入输出(BIOS),切换为“ABC显

示模式”。

(3)为确保监控的稳定性,主板设计上增加了

屏幕长亮的功能。 也就是当屏幕出现故障的情况进

行维修更换时,无需将系统关机或脱机,只要替换

掉故障的屏幕即可立即恢复显示,不会影响在线系统

的显示与运作,同时,可以解决现场部分黑屏问题

[6]

(4)单屏、双屏、三屏显示均采用SVGA256.

BGI,文件版本为3.2。

(5)尽可能不修改既有应用软件的代码。

2.1 硬件设计

AMOS-6000中,将HDMI替换为VGA接口

[7]

为了不影响主板的基本架构,保留HDMI显示控制

电路,并在HDMI显示控制电路与替换后的VGA接

口间增加显示转换电路,如图1所示。

2.2 BIOS驱动修改

修改BIOS显示驱动

[8]

中的双屏模式(1 024×

768×8 mode)和三屏模式(1 024×768×32 mode),

38

2019.5总第266期

RCA

图1 硬件设计图

部分代码如下:

int 10 4f14 8003 xxxx;快速切换显示屏幕

[9]

int 10:中断服务向量;4f14:系统服务代码;

8003:变更显示屏代码。

int 10 4f14 8003 281

device bit define

ActCrt EQU 00001h;设定缓存器值,点亮

VGA屏幕;

DuoView EQU 00080h;设定缓存器值,点亮

两个屏幕;

ActDP6 EQU 00200h;设定缓存器值,点亮

内定HDMI2屏幕;

ActDP5 EQU 08000h;设定缓存器值,点亮

内定HDMI1屏幕;

……

显示结果如图2所示。

图2 增加BIOS驱动效果多屏显示图

2.3 BGI文件修改

由于第3屏显示分辨率达到32 bit,但DOS系

统只有8 bit,需增加1 024×768×32 Mode到基本

图像接口(BGI)文件,作相应适配修改。

当颜色为3时,寄存器AL赋值为3,映射的

32 bpp(bit per point)值应该为{ 255,255,0 }。因

此,寄存器BX应该存储MapTable[9]的地址。寄

存器Bl部分将写{ MapTable[9],MapTable[10],

第28卷第5期

邱锡宏等:AMOS-6000工控机多屏显示的设计及应用

方法与应用

MapTable[11],AL+240 }内容,筛选地址以适应32

bpp输出。因为32 bit的颜色支持数远超过8 bit的

256色, 如果直接将32 bit的颜色值转到8 bit, 会造

成很多颜色无法显示。如图3所示,左边pixel是32

bit的值, 右边Displayed colour是8 bit支持的颜色。

可以看到,很多像素值在8 bit中是未被定义的。

图3 8 bpp到32 bpp颜色映射图

由此,创建一个8 bpp到32 bpp颜色映射表。

代码如下:

;----------------------------------------------------------

BackNandByte PROC NEAR ;#23 BackGround

NAND write mode

JZ @NoBackNand

RET

@NoBackNand:

NOT AH

MOV ES:[DI],AH

NOT AH

RET

BackNandByte ENDP

MapTable:

db 0 , 0 , 0 , ;0

db 255 , 0 , 0 , ;1

db 0 , 255 , 0 , ;2

db 255 , 255 , 0 , ;3

db 0 , 0 , 255 , ;4

db 255 , 0 , 255 , ;5

db 42 , 42 , 165 , ;6

db 211 , 211 , 211 , ;7

db 169 , 169 , 169 , ;8

db 230 , 216 , 173 , ;9

db 144 , 238 , 144 , ;10

db 255 , 255 , 224 , ;11

db 144 , 144 , 255 , ;12

db 147 , 83 , 237 , ;13

db 0 , 255 , 255 , ;14

db 255 , 255 , 255 , ;15

在8 bit显示下, 透明度不被使用。所以,改用

color+240写最后一个字节(byte),用它来保存最后

一个颜色,目的是改善显示效能。原本8 bit,显示

只有1 byte, 转换成32 bit,显示4 bytes, 每一个颜色

都必须增加4倍的处理时间。

显示最后一个颜色的程序如下。如果比对之后,

颜色值并没有改变, 则可以略过这个显示程序。

;--------------------------------------------

GetPixelAddress PROC NEAR

PUSH AX

PUSH DX

PUSH SI

MOVE DX,DS:[DrawOfsY]

;get display Y offset

ADD DX,DS:[PixelY]

;add PixelY to it

MOV AX,DS:[ScanLineBytes]

;bytes per scan line

MUL DX

;dx:ax=beginning of scan line

MOV SI,DS:[DrawOfsX]

;get display x offset

ADD SI,DS:[PixelX]

;add display x offset to PixelX

ADD SI,SI

ADD SI,SI

ADD SI,AX

;si=address

ADC DX,0

;dx=bank

RCA

2019.5总第266期

39

方法与应用

铁 路 计 算 机 应 用

2019年5月

CMP DS:[PixelSegment],DX

;set the bank select

JZ @DoneBankSelect

MOV DS:[PixelSegment],DX

CALL DS:[BankSelectProc]

;call approprate bank sel code

;--------------------------------------------

ForeByte PROC NEAR ;#8 Foreground write mode

JZ @NoFore

CALL MoveByte

RET

@NoFore

RET

ForeByte ENDP

在DOS系统下,测试256色不同颜色在黑白底

色下显示效果,如图4所示, 能够满足机器绘图芯片

32 bit处理的要求。

图4 8 bpp到32 bpp颜色映射效果图

3 现场应用

通过上述设计,满足DS6系列计算机联锁系统

操作表示机当前的各种应用,在DOS系统下的应用

40

2019.5总第266期

RCA

软件只需替换原有的BGI文件,同时,修改原多屏

卡指定屏幕的应用接口函数。AMOS-6000工控机能

较好地解决原有在用设备的备品备件问题,已经在既

有京沪普速铁路线车站广泛使用。

4 结束语

AMOS-6000工控机的应用,能很好地解决计算

机联锁系统中操作表示机的多屏显示问题,兼容原

有DOS系统的操作界面,支持Windows系统的最大

分辨率为1 920×1 080×32,同时,多屏支持横屏扩

展和竖屏扩展,有利于现场的设备维护

[10]

参考文献:

[1]中国铁路总公司.车站计算机联锁操作显示技术规范:TJ/

DW 188-2016[S].北京:中国铁路总公司,2016.

[2] 国家铁路局.铁路车站计算机联锁技术条件:TB/T 3027-

2015[S]. 北京:中国铁道出版社,2015.

[3] 朱迎春,张 程. 计算机联锁操作显示屏适配分析[J].铁道

通信信号,2016,52(Z2):118-119.

[4]周升锋,李立新,孙传俊.Turbo C/Borland C++用户界面程

序设计[M].西安:西安交通大学出版社,1994.

[5] 刘子良.计算机硬件系统设计原理[M].北京:高等教育出

版社, 2016.

[6] 葛学仁,王长海.计算机联锁车站控制台显示黑屏故障的处

理[J]. 铁路计算机应用,2011,20(3):23-25.

[7] 许耀山.电子产品PCB可制造性设计方法[J].电子科技,

2012, 25(11):63-65.

[8]刘德贵,杨宝琪. DOS/BIOS使用详解(修订本)[M].北京:

电子工业出版社,1994.

[9]Video Electronics Standards Association. VESA BIOS

EXTENSION (VBE) – Core Functions Standard, Version: 3.0[Z/

OL].[1998-09-01]. .

[10]张秉帅,李 坤,杨 淘,等. 以ATS为核心的站场图数

据及显示方案的研究[J].铁路计算机应用,2014,23(6):5-9.

责任编辑

王 浩

2024年4月9日发(作者:幸祺福)

第28卷第5期

Vol.28 No.5

    

文章编号:1005-8451(2019)5-0037-04

方法与应用

Method and Applicatio

AMOS-6000工控机多屏显示的设计及应用

邱锡宏,秦玉利

(北京全路通信信号研究设计院集团有限公司,北京 100070)

摘 要:

计算机联锁系统的操作显示界面需完整显示所控制对象的站场形状,对于规模较大的站

场,单台显示器的显示效果较差,图形、文本紧缩,不便于操作和识别。通过将AMOS-6000工控机的多

屏显示硬件高清视频接口(HDMI)修改为视频图像阵列(VGA)接口方式,针对DOS系统,采用基本

输入输出系统(BIOS)驱动和基本图像接口(BGI)文件,实现多台显示器组合显示图形。该方案在京

沪既有普速铁路线的工程实践中得到应用,满足铁路枢纽车站、编组站等大型站场的操作显示需求。

关键词:

多屏显示;AMOS-6000工控机;计算机联锁

中图分类号:

U284.3∶TP39

文献标识码:

A

Multi-screen display for AMOS-6000 industrial person computer

( Beijing National Railway Research & Design Institute of Signal & Communication Group Co. Ltd.,

Beijing 100070, China

Abstract: The operation interface of computer interlocking system needs to display the shape of the station and yard

of the controlled object. For large-scale stations, the display effect of single display is poor, the graphics and text are

compact, and it is not easy to operate and recognize. By modifying the multi-screen display hardware HDMI of AMOS-

6000 industrial person computer to the video graphics Array (VGA) interface mode, the basic input and output system

(BIOS) driver and basic graphics interface (BGI) file were used to implement the combination display of multiple

displays for the DOS system. The scheme was applied in the engineering practice of Beijing-Shanghai existing general

speed railway line, could meet the operation and display requirements of railway hub stations, marshalling stations and

other large stations.

Keywords: multi-screen display; AMOS-6000 industrial person computer; computer interlocking

QIU Xihong, QIN Yuli

目前,计算机联锁系统中铁路车站站场图形采

用固定分辨率、固定图元尺寸的显示方式,当站场

图形超过一台显示器的显示范围时,需要使用多个

显示器分别显示全部站场图形的不同区域

[1]

铁路的计算机联锁厂家多屏显示主要有两种

方式:

(1)通过单台机器中装载多屏卡的方式;

(2)通过多台机器进行多屏的显示。

第1种方式涉及多屏卡显卡与机器兼容性问题,

第2种方式涉及到多台机器显示同步及同一鼠标跨

屏操作等问题。本文选用第1种方式:采用单台机器,

通过主板集成显示系统进行多屏显示。该方法能较

好地解决上述问题,更好地满足使用和维护的需要

[2]

收稿日期:2018-05-30

基金项目:中国铁路总公司重大课题(2016X003-E)

作者简介:邱锡宏,高级工程师;秦玉利,高级工程师。

1 多屏显示

根据站场图形规模,可将站场图形显示于1个、

2个或3个显示屏,显示模式支持Clone模式以及

Split分屏模式

[3]

1.1 常用显示模式

1.1.1 Clone模式

每个屏幕均显示相同的内容,该模式简称为:

AAA。适用于仅需要单屏显示的站场图形场景。

1.1.2 Split模式

站场图形扩展显示在多个屏幕上,每个屏幕显

示站场图形的一部分,显示模式简称为:ABC。适

用于需要双屏或三屏显示的站场图形场景(当为双

屏时,第3屏不显示)。

显示模式支持横屏显示与竖屏显示,满足站场

图形横向扩展与纵向扩展的需求。

RCA

2019.5总第266期

37

方法与应用

铁 路 计 算 机 应 用

2019年5月

当该计算机为既有在用设备时,针对DOS系统,

还需要满足下述需求。

1.2 现场既有在用设备需求

(1)DOS系统下,在启动文件中

增加多屏驱动软件。该软件具备加载多屏显示或卸

载多屏显示的功能。

(2)应用软件中,每个显示屏的图形坐标均从(0,

0)开始。

(3)通过应用接口软件,指定屏幕后进行图形

显示

[4]

(4)单屏、双屏、三屏显示均采用支持C语言

接口的文件,文件版本为2.4,支持

256色模式。

2 设计方法

(1)铁路车站通常采用视频图像阵列(VGA)

接口的显示器,标准主板提供一个VGA接口,两

个高清视频接口(HDMI),需要设计转换电路,将

HDMI转换为VGA接口

[5]

(2)标准主板只支持一种显示模式,对于提供

三屏接口的主板,默认显示模式为“AAA”模式,

通过修改基本输入输出(BIOS),切换为“ABC显

示模式”。

(3)为确保监控的稳定性,主板设计上增加了

屏幕长亮的功能。 也就是当屏幕出现故障的情况进

行维修更换时,无需将系统关机或脱机,只要替换

掉故障的屏幕即可立即恢复显示,不会影响在线系统

的显示与运作,同时,可以解决现场部分黑屏问题

[6]

(4)单屏、双屏、三屏显示均采用SVGA256.

BGI,文件版本为3.2。

(5)尽可能不修改既有应用软件的代码。

2.1 硬件设计

AMOS-6000中,将HDMI替换为VGA接口

[7]

为了不影响主板的基本架构,保留HDMI显示控制

电路,并在HDMI显示控制电路与替换后的VGA接

口间增加显示转换电路,如图1所示。

2.2 BIOS驱动修改

修改BIOS显示驱动

[8]

中的双屏模式(1 024×

768×8 mode)和三屏模式(1 024×768×32 mode),

38

2019.5总第266期

RCA

图1 硬件设计图

部分代码如下:

int 10 4f14 8003 xxxx;快速切换显示屏幕

[9]

int 10:中断服务向量;4f14:系统服务代码;

8003:变更显示屏代码。

int 10 4f14 8003 281

device bit define

ActCrt EQU 00001h;设定缓存器值,点亮

VGA屏幕;

DuoView EQU 00080h;设定缓存器值,点亮

两个屏幕;

ActDP6 EQU 00200h;设定缓存器值,点亮

内定HDMI2屏幕;

ActDP5 EQU 08000h;设定缓存器值,点亮

内定HDMI1屏幕;

……

显示结果如图2所示。

图2 增加BIOS驱动效果多屏显示图

2.3 BGI文件修改

由于第3屏显示分辨率达到32 bit,但DOS系

统只有8 bit,需增加1 024×768×32 Mode到基本

图像接口(BGI)文件,作相应适配修改。

当颜色为3时,寄存器AL赋值为3,映射的

32 bpp(bit per point)值应该为{ 255,255,0 }。因

此,寄存器BX应该存储MapTable[9]的地址。寄

存器Bl部分将写{ MapTable[9],MapTable[10],

第28卷第5期

邱锡宏等:AMOS-6000工控机多屏显示的设计及应用

方法与应用

MapTable[11],AL+240 }内容,筛选地址以适应32

bpp输出。因为32 bit的颜色支持数远超过8 bit的

256色, 如果直接将32 bit的颜色值转到8 bit, 会造

成很多颜色无法显示。如图3所示,左边pixel是32

bit的值, 右边Displayed colour是8 bit支持的颜色。

可以看到,很多像素值在8 bit中是未被定义的。

图3 8 bpp到32 bpp颜色映射图

由此,创建一个8 bpp到32 bpp颜色映射表。

代码如下:

;----------------------------------------------------------

BackNandByte PROC NEAR ;#23 BackGround

NAND write mode

JZ @NoBackNand

RET

@NoBackNand:

NOT AH

MOV ES:[DI],AH

NOT AH

RET

BackNandByte ENDP

MapTable:

db 0 , 0 , 0 , ;0

db 255 , 0 , 0 , ;1

db 0 , 255 , 0 , ;2

db 255 , 255 , 0 , ;3

db 0 , 0 , 255 , ;4

db 255 , 0 , 255 , ;5

db 42 , 42 , 165 , ;6

db 211 , 211 , 211 , ;7

db 169 , 169 , 169 , ;8

db 230 , 216 , 173 , ;9

db 144 , 238 , 144 , ;10

db 255 , 255 , 224 , ;11

db 144 , 144 , 255 , ;12

db 147 , 83 , 237 , ;13

db 0 , 255 , 255 , ;14

db 255 , 255 , 255 , ;15

在8 bit显示下, 透明度不被使用。所以,改用

color+240写最后一个字节(byte),用它来保存最后

一个颜色,目的是改善显示效能。原本8 bit,显示

只有1 byte, 转换成32 bit,显示4 bytes, 每一个颜色

都必须增加4倍的处理时间。

显示最后一个颜色的程序如下。如果比对之后,

颜色值并没有改变, 则可以略过这个显示程序。

;--------------------------------------------

GetPixelAddress PROC NEAR

PUSH AX

PUSH DX

PUSH SI

MOVE DX,DS:[DrawOfsY]

;get display Y offset

ADD DX,DS:[PixelY]

;add PixelY to it

MOV AX,DS:[ScanLineBytes]

;bytes per scan line

MUL DX

;dx:ax=beginning of scan line

MOV SI,DS:[DrawOfsX]

;get display x offset

ADD SI,DS:[PixelX]

;add display x offset to PixelX

ADD SI,SI

ADD SI,SI

ADD SI,AX

;si=address

ADC DX,0

;dx=bank

RCA

2019.5总第266期

39

方法与应用

铁 路 计 算 机 应 用

2019年5月

CMP DS:[PixelSegment],DX

;set the bank select

JZ @DoneBankSelect

MOV DS:[PixelSegment],DX

CALL DS:[BankSelectProc]

;call approprate bank sel code

;--------------------------------------------

ForeByte PROC NEAR ;#8 Foreground write mode

JZ @NoFore

CALL MoveByte

RET

@NoFore

RET

ForeByte ENDP

在DOS系统下,测试256色不同颜色在黑白底

色下显示效果,如图4所示, 能够满足机器绘图芯片

32 bit处理的要求。

图4 8 bpp到32 bpp颜色映射效果图

3 现场应用

通过上述设计,满足DS6系列计算机联锁系统

操作表示机当前的各种应用,在DOS系统下的应用

40

2019.5总第266期

RCA

软件只需替换原有的BGI文件,同时,修改原多屏

卡指定屏幕的应用接口函数。AMOS-6000工控机能

较好地解决原有在用设备的备品备件问题,已经在既

有京沪普速铁路线车站广泛使用。

4 结束语

AMOS-6000工控机的应用,能很好地解决计算

机联锁系统中操作表示机的多屏显示问题,兼容原

有DOS系统的操作界面,支持Windows系统的最大

分辨率为1 920×1 080×32,同时,多屏支持横屏扩

展和竖屏扩展,有利于现场的设备维护

[10]

参考文献:

[1]中国铁路总公司.车站计算机联锁操作显示技术规范:TJ/

DW 188-2016[S].北京:中国铁路总公司,2016.

[2] 国家铁路局.铁路车站计算机联锁技术条件:TB/T 3027-

2015[S]. 北京:中国铁道出版社,2015.

[3] 朱迎春,张 程. 计算机联锁操作显示屏适配分析[J].铁道

通信信号,2016,52(Z2):118-119.

[4]周升锋,李立新,孙传俊.Turbo C/Borland C++用户界面程

序设计[M].西安:西安交通大学出版社,1994.

[5] 刘子良.计算机硬件系统设计原理[M].北京:高等教育出

版社, 2016.

[6] 葛学仁,王长海.计算机联锁车站控制台显示黑屏故障的处

理[J]. 铁路计算机应用,2011,20(3):23-25.

[7] 许耀山.电子产品PCB可制造性设计方法[J].电子科技,

2012, 25(11):63-65.

[8]刘德贵,杨宝琪. DOS/BIOS使用详解(修订本)[M].北京:

电子工业出版社,1994.

[9]Video Electronics Standards Association. VESA BIOS

EXTENSION (VBE) – Core Functions Standard, Version: 3.0[Z/

OL].[1998-09-01]. .

[10]张秉帅,李 坤,杨 淘,等. 以ATS为核心的站场图数

据及显示方案的研究[J].铁路计算机应用,2014,23(6):5-9.

责任编辑

王 浩

发布评论

评论列表 (0)

  1. 暂无评论