基于RS-232串口的多媒体演示系统控制方式设计与程序开发
2013-09-27李隆庚李秀荣
李隆庚,李秀荣
(1.唐山师范学院 教育技术中心,河北 唐山063000;2.唐山学院 学报编辑部,河北 唐山063000)
20世纪末,随着信息技术的飞速发展,多媒体演示系统被广泛应用于诸多领域。以“计算机+投影机”为核心组件的多媒体演示系统作为演示平台和信息化环境的一重要部分,无论在教学活动中对于教育、教学效果的提高,还是在商务活动中对于商务效益、效率的促进都显得越来越重要和不可或缺。在整个多媒体演示系统中,计算机以其强大的功能实现了文本、图形、图像、音视频等数据信息的综合处理,而投影机则为其功能的充分展示提供了良好的显示条件。
在多媒体演示系统中核心的目标控制设备是投影机,而对投影机的控制主要表现在对灯电源的开启和关闭,主要有遥控器和中央控制系统两种控制方式。[1]前者属手工操作,不同品牌的投影机有各自的遥控器,容易造成混乱和丢失,而且控制效果易受遥控器电池电量、发射遥控信号的方位和距离以及外界信号的干扰等影响。因此,遥控器控制方式在多数场合的多媒体演示系统中基本上被淘汰。目前使用较多的中央控制系统克服了遥控器控制的弊端,而且可以利用一键切换实现对音频和视频设备的控制。然而中央控制系统存在按键磨损、硬软件建设与维护成本过高、受到网络因素影响致使控制失效等问题。因此,从节约成本的角度出发,寻找有利于本单位使用、能够满足工作要求且操作简便的多媒体演示系统的控制方式具有重要的现实意义和较高的经济价值。本研究即改变了原有的控制方式,利用计算机RS-232接口直接实现了对投影机的控制,有效避免了上述两种控制方式的缺陷,而且由于省去了中控软硬件,既能大幅降低演示系统建设与维护成本,又使设备连接简单而性能可靠。
1 基于RS-232串口的多媒体演示系统控制方式设计
RS-232是美国电子工业协会联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准,其对连接器的每个针脚的信号内容以及信号的电平等都作了规定。其中RS是Recommended Standard(推荐标准)的缩写,232是标识号。RS-232通信标准具有连线距离长、双向连接只需3条导线、硬件编程要求简单等特点。计算机主板以及投影机后面板上都有RS-232接口,因此控制投影机灯电源的设计开发主要包含两个部分:一是编制控制程序安装在计算机中,二是焊接一条控制线连接投影机和计算机的串口。
1.1 控制软件程序编写语言的选择
控制软件可以使用C语言、VB等编写,在本研究中采用的是Visual Basic 6.0,它是基于Basic的可视化的程序设计语言,采用面向对象、事件驱动的编程机制,提供了一种所见即所得的程序设计方法。面向对象程序设计方法(OOP)是把程序和数据封装起来,视为一个对象,可为每个对象设置属性;事件驱动编程机制是由用户的动作即事件掌握着程序运行流向[2]。因此,控制应用程序就由用户界面设计(通过对象属性)和代码(驱动事件)的编制构成。Visual Basic 6.0中提供了的串行通信控件MSComm.ocx,利用它可以进行通信控制程序代码的编制开发。
1.2 计算机与常见投影机RS-232接口定义
计算机主板统一配有RS-232公接口,一共有9个针脚,针脚顺序如图1所示。如果只是从计算机向投影机发送控制信号,那么只用到计算机公接头的针脚2和5,针脚的功能说明如表1所示。
图1 计算机主板DB-9接口针脚及顺序实物图
表1 计算机DB-9接口用于控制的针脚及说明
但是投影机却有众多不同的RS-232串口形式,用于接收数据和信号地的针脚定义都不同。图2列出了常见的投影机RS-232接口定义[3](母座脚管图)。如果接收控制信号的投影机的串口是DB-9,也就是图2中的第一种,那么接口控制针脚使用的是2和5,具体说明如表2所示。
图2 常用投影机的RS-232接口定义示意图
表2 投影机DB-9接口用于控制的针脚及说明
1.3 连接投影机和计算机的RS-232控制线的焊接制作
计算机和投影机的串口需要用一条控制线连接。由于计算机和投影机主板的串口都是公头针脚,因此控制线需要两个RS-232接口母头,通过一条多股通信电缆线(网线或者电话线等)将二者连接。需要注意的是:计算机的发送数据针3要与投影机的接收数据针2焊接,相应的两个针脚地5相焊接。控制线焊接结果的实物图如图3所示。
图3 控制线焊接实物图
1.4 多媒体演示系统设备物理连接
多媒体演示系统主要由计算机和投影机组成。计算机的视频信号使用VGA线经过视频分配器分两路传送到计算机的显示器和投影机上,控制投影机的信号则由自制的连接投影机和计算机RS-232串口的控制线传送,如图4所示。如此,控制的物理连接部分就完成了,下一步将进行控制程序的开发。
图4 多媒体演示系统设备连接图
2 基于RS-232串口的投影机控制程序的开发
在本研究中,以控制型号为NEC LT375+投影机为例说明软件开发过程。编写控制程序首先需要得到该投影机的通信协议(可通过说明书查到,如表3所示);其次是查询NEC LT375+投影机的控制码,如表4所示。这些都是编写程序代码的必备参数。
表3 LT375+投影机通信协议
表4 投影机NEC LT375+的控制码
2.1 添加 Microsoft Comm Control 6.0控件
控制程序需要用到Visual Basic 6.0中的 Microsoft Comm Control 6.0控件,默认的情况下此控件在工具箱中没有。打开VB6,选择“新建”选项卡,然后选择“标准EXE”,单击“打开”按钮;选择菜单中的“工程/部件”,在打开的“部件”对话框中,选择Microsoft Comm Control 6.0(在前面复选框中打勾),单击“确定”;在左侧工具箱最下面出现“电话”标志,表明添加控件成功。
2.2 设置应用程序的界面
鼠标左键单击刚添加的“电话”工具,在窗体Form1中用鼠标左键拖出一个矩形框,矩形框里随之出现一个“电话”标志;在左侧工具箱中再单击CommandButton按钮,在窗体中用鼠标分别拖出两个按钮;先选择其中的一个,在右侧属性窗口设置其属性,Caption改为“投影机开”,另一个控件按钮的属性名称使用相同方法改为“投影机关”。
通过属性窗口设置程序名称。在属性列表中找到Form1Form,然后将此列表中的Caption属性赋予一定意义的程序名称,比如“唐山师院教育技术中心——投影机控制程序”;属性Picture加载图片,调整窗口大小;“投影机开”和“投影机关”的控件属性Style由0-Standard改为1-Graphical;Backcolor设置背景;窗体属性ControlBox由True改为False,也就是在窗体运行时不显示控件菜单栏。设置完成后的程序界面如图5所示。
图5 控制程序界面
2.3 编写程序代码
程序代码的编写由窗体初始化、投影机灯电源开和灯电源关组成。
窗体初始化代码编写如下:
投影机灯电源开的代码编写如下:
窗口初始化控制程序代码说明如表5所示。
表5 程序控制代码说明
2.4 生成可执行程序文件
界面以及程序代码设置完成后,通过“运行”调试成功,单击菜单中的“文件/生成.exe工程文件”,生成可执行文件。
2.5 完成MSComm32组件注册
在没有安装VB软件的计算机中运行控制程序的时候会弹出如下的提示Component“MSComm32.ocx”or one of its dependencies not correctly registered:a file is missing or invalid。因此需要进行注册:
(1)从网络上下载 MSComm32.ocx文件;(2)将这个MSComm32.ocx文件“复制/粘贴”到没有安装VB软件的计算机中,粘贴路径为 C:/windows/system32。(3)单击“开始/运行”,在打开的“运行”对话框中输入“Regsvr32MSComm32.ocx”,回车或确定,由此会弹出成功注册的窗口。
2.6 计算机开机自动启动控制程序设置
为避免用户每次启动计算机都要打开控制程序,可以设置成自动运行,把控制软件的快捷方式拖入到“开始/所有程序/启动”中。
3 结语
将RS-232控制技术从中央控制系统众多模块中分离出来,在满足控制需要的同时,设备成本、故障率都可大幅度降低。此控制方式的多媒体演示系统在设备构成上遵循简约化原则,省去了遥控器和中央控制系统,而且能够降低投影机非法关机次数,延长了灯泡的使用寿命;在人性化方面体现了软件设计中的使用便捷性。此软件还可以进一步开发,如设置提醒关闭投影机的执行程序、实现网络远程控制等。
[1] 李隆庚.多媒体教学设备优化配置与新技术应用展望[J].唐山学院学报,2008,21(2):37-38.
[2] 吴文斗,吴兵,吴兴勇.visual basic程序设计教程[M].长沙:湖南教育出版社,2006:1-2.
[3] 投影机服务平台[EB/OL].http://www.njjyzb.cn/STYJ/channel1/web005-006lv.aspx.