论文部分内容阅读
【摘 要】由于计算机信息技术已经广泛应用于各行各業中,其操作方便、用处广泛,尤其适用工控行业,下面介绍一种用于演播室布光的新型微机布光控制系统,并给出其的软、硬件实现方法。该种控制方法实现简捷,控制灵活可靠,已经在一些大、中型演播室中得到应用,同时也方便与其它各种不同控制网络转接连接。
【关键词】微机控制;数据祯;控制网络
一、引言
高清晰度电视是在现代电子技术基础上建立起来的一种崭新的电视系统,它具有提供高保镇的图象和声音以及传送数据信息的能力。特别是在“十一五”发展规划中,全数字化演播室是其中的一项重要组成部分,它包含有节目发射系统、接收系统和制作系统等等。而其中节目制作效果的优劣尤其依赖于演播室的灯光控制系统。一般大中型演播室、演播厅的灯光控制系统是由主控制器和分布在各处的调光器组成。主控制器通过各种不同的总线向各调光器发送各种控制命令,调光器在接收到控制命令后,依据命令完成对灯具的空间位置、活页的张合、俯仰角的大小、以及吊杆高低位置等控制。微机布光控制就是在原有控制系统的基础上,经过总线转接器接入原有的控制系统,不需要投入更大开发费用。
二、微机控制的实现方法
计算机与外设进行数据交换的通道有两种方式:一种是并口连接;另外一种是串口连接,在这里主用到的是串口连接方式。
在使用计算机串口(COM1、2等)以前,先了解串口的电路特性——RS232。
RS232的电气特性定义了逻辑1和逻辑0的最高和最低电压。逻辑1是从-3V到-25V,通常为-12V;逻辑0从3V到25V,通常是12V。-3V到3V之间的任何电压都处于未定逻辑状态。而演播室的灯光控制网络大部分都使用的RS485电气特性,也就是逻辑0是我们常说的低电平,逻辑1是高电平。
由于以上的原因,微机控制系统需要一个总线转换器。
三、总线转换器
总线中转器是连接计算机和布光控制系统的一种设备,可用于扩展子网的节点数。同时可以匹配计算机与低层设备的不同传输波特率,提高数据传输的可靠性。其核心是由两片AVR的单片机Megal 8组成。
物理连接如下图:
四、计算机软件设计
计算机软件采用VB 设计,VB是一种成熟的、面向对象的程序设计语言。它上手简单、易学,是做界面设计的理想设计软件之一。
(一)微机控制系统的登录界面,输入口令来设定使用权限
登录界面(如下图)
输入口令后可进入主菜单界面,主菜单界面根据不同情况设有操控界面(如下图)、使用说明界面和一些参数设定界面。
(二)这里主要介绍操控界面设计:
仿主控台的操控界面
4个文本框表示所要输入的4组设备,每个文本框输入满3位后光标自动后移,其代码如下:
Private Sub Text1_Change()
If Len(Text1.Text) > 2 Then
Text2.SetFocus
End If
End Sub
按键上面的暗红色的圆表示按键有效,当有按键按下时,圆圈变为红色。按键用来控制对应选出的子机动作。
(三)计算机的通信编程
用VB6开发串行通信的程序有两种方法:一是利用Windows的API()函数;另一中是利用VB所带的通信控件Mscomm,利用API()函数编程较为复杂,需要掌握大量的通信知识和计算机低层硬件知识;而使用通信控件Mscomm可以省掉这些,比较容易解决通信问题,不过她的通信波特率受到限制。需要增加总线转换器才能应用到灯光控制系统中。其代码如下:
串口初始化程序:
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "38400,N,8,1"
MSComm1.InputLen = 0
MSComm1.PortOpen = True
End Sub
相关按键的的处理及数据发送程序:
Private Sub Command1_Click()
If Shape2.BackColor = &H40 Then
MSComm1.Output = Chr(32)
Shape2.BackColor = &HFF
Else: Shape2.BackColor = &HFF&
MSComm1.Output = Chr(13)
Shape2.BackColor = &H40
End If
End Sub
五、单片机通信程序设计
Atmegal 8 单片机采用ICCAVR编程,它有一个标准的通用串行口USART,通过设定控制和状态寄存器UCSRA、UCSRB、UBRR等,使它能够和计算机进行可靠的通信。其代码设计如下:
void main(void)
{
unsigned char a;
DDRA = 0xFF;
UBRRL = 26;
UBRRH = 0; 波特率设置
SEI();
UCSRB = (1< DDRB=0xB0;
SPCR=0x52; 设置SPI口
a=SPDR;
a=SPSR;
aa: wait;
wait;
PORTA=c;
SPDR=c; 往第2个单片机送数
if((SPSR&0x80)==0x80){a=SPDR;goto aa;}
else{goto aa;}
}
void uart0_rx_isr(void) 中断入口程序
{
wait;
wait;
c=UDR;
}
六、结束语
RS-232串行接口总线适用于:设备之间的通讯距离不大于15m,设备之间通信波特率不高的场合,实践证明在符合以上条件的场合,使用合适的通信介质,计算机可以准确、可靠的与单片机进行通信,满足设计者的要求。(注:由于系统代码过多,以上均为部分小的功能代码段)
该系统已经成功应用于莆田电视演播中心,经过一个多月的运行,未见误操作和误动作,运行良好。希望本文能对设计者提供一种有价值的参考。
【参考文献】
[1]William Buchanan.PC接口通信与Windows编程.中国电力出版社.2001
[2]沈文. Eagle lee .詹卫前.AVR单片机C语言开发入门指导.清华大学出版社.2003
[3]Gary Cornell. Visual Basic 5.0从入门到精通.科学出版社.1998
[4] 李朝青.PC机及单片机数据通信技术.北京航空航天大学出版社.2000
[5]范逸之.陈立元.VB与RS-232串行通信控制 .清华大学出版社. 2002
【关键词】微机控制;数据祯;控制网络
一、引言
高清晰度电视是在现代电子技术基础上建立起来的一种崭新的电视系统,它具有提供高保镇的图象和声音以及传送数据信息的能力。特别是在“十一五”发展规划中,全数字化演播室是其中的一项重要组成部分,它包含有节目发射系统、接收系统和制作系统等等。而其中节目制作效果的优劣尤其依赖于演播室的灯光控制系统。一般大中型演播室、演播厅的灯光控制系统是由主控制器和分布在各处的调光器组成。主控制器通过各种不同的总线向各调光器发送各种控制命令,调光器在接收到控制命令后,依据命令完成对灯具的空间位置、活页的张合、俯仰角的大小、以及吊杆高低位置等控制。微机布光控制就是在原有控制系统的基础上,经过总线转接器接入原有的控制系统,不需要投入更大开发费用。
二、微机控制的实现方法
计算机与外设进行数据交换的通道有两种方式:一种是并口连接;另外一种是串口连接,在这里主用到的是串口连接方式。
在使用计算机串口(COM1、2等)以前,先了解串口的电路特性——RS232。
RS232的电气特性定义了逻辑1和逻辑0的最高和最低电压。逻辑1是从-3V到-25V,通常为-12V;逻辑0从3V到25V,通常是12V。-3V到3V之间的任何电压都处于未定逻辑状态。而演播室的灯光控制网络大部分都使用的RS485电气特性,也就是逻辑0是我们常说的低电平,逻辑1是高电平。
由于以上的原因,微机控制系统需要一个总线转换器。
三、总线转换器
总线中转器是连接计算机和布光控制系统的一种设备,可用于扩展子网的节点数。同时可以匹配计算机与低层设备的不同传输波特率,提高数据传输的可靠性。其核心是由两片AVR的单片机Megal 8组成。
物理连接如下图:
四、计算机软件设计
计算机软件采用VB 设计,VB是一种成熟的、面向对象的程序设计语言。它上手简单、易学,是做界面设计的理想设计软件之一。
(一)微机控制系统的登录界面,输入口令来设定使用权限
登录界面(如下图)
输入口令后可进入主菜单界面,主菜单界面根据不同情况设有操控界面(如下图)、使用说明界面和一些参数设定界面。
(二)这里主要介绍操控界面设计:
仿主控台的操控界面
4个文本框表示所要输入的4组设备,每个文本框输入满3位后光标自动后移,其代码如下:
Private Sub Text1_Change()
If Len(Text1.Text) > 2 Then
Text2.SetFocus
End If
End Sub
按键上面的暗红色的圆表示按键有效,当有按键按下时,圆圈变为红色。按键用来控制对应选出的子机动作。
(三)计算机的通信编程
用VB6开发串行通信的程序有两种方法:一是利用Windows的API()函数;另一中是利用VB所带的通信控件Mscomm,利用API()函数编程较为复杂,需要掌握大量的通信知识和计算机低层硬件知识;而使用通信控件Mscomm可以省掉这些,比较容易解决通信问题,不过她的通信波特率受到限制。需要增加总线转换器才能应用到灯光控制系统中。其代码如下:
串口初始化程序:
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "38400,N,8,1"
MSComm1.InputLen = 0
MSComm1.PortOpen = True
End Sub
相关按键的的处理及数据发送程序:
Private Sub Command1_Click()
If Shape2.BackColor = &H40 Then
MSComm1.Output = Chr(32)
Shape2.BackColor = &HFF
Else: Shape2.BackColor = &HFF&
MSComm1.Output = Chr(13)
Shape2.BackColor = &H40
End If
End Sub
五、单片机通信程序设计
Atmegal 8 单片机采用ICCAVR编程,它有一个标准的通用串行口USART,通过设定控制和状态寄存器UCSRA、UCSRB、UBRR等,使它能够和计算机进行可靠的通信。其代码设计如下:
void main(void)
{
unsigned char a;
DDRA = 0xFF;
UBRRL = 26;
UBRRH = 0; 波特率设置
SEI();
UCSRB = (1<
SPCR=0x52; 设置SPI口
a=SPDR;
a=SPSR;
aa: wait;
wait;
PORTA=c;
SPDR=c; 往第2个单片机送数
if((SPSR&0x80)==0x80){a=SPDR;goto aa;}
else{goto aa;}
}
void uart0_rx_isr(void) 中断入口程序
{
wait;
wait;
c=UDR;
}
六、结束语
RS-232串行接口总线适用于:设备之间的通讯距离不大于15m,设备之间通信波特率不高的场合,实践证明在符合以上条件的场合,使用合适的通信介质,计算机可以准确、可靠的与单片机进行通信,满足设计者的要求。(注:由于系统代码过多,以上均为部分小的功能代码段)
该系统已经成功应用于莆田电视演播中心,经过一个多月的运行,未见误操作和误动作,运行良好。希望本文能对设计者提供一种有价值的参考。
【参考文献】
[1]William Buchanan.PC接口通信与Windows编程.中国电力出版社.2001
[2]沈文. Eagle lee .詹卫前.AVR单片机C语言开发入门指导.清华大学出版社.2003
[3]Gary Cornell. Visual Basic 5.0从入门到精通.科学出版社.1998
[4] 李朝青.PC机及单片机数据通信技术.北京航空航天大学出版社.2000
[5]范逸之.陈立元.VB与RS-232串行通信控制 .清华大学出版社. 2002