基于VB的电子线路板自动测试系统设计
0 引言
在电子产品的生产过程中,需要将各种电子元器件安装到电子线路板上,由于种种原因,安装后的线路板可能会存在故障,需要进行测试。在生产流水线上,若依靠人工进行测试既费事费力又容易出现差错。针对这种情况,我们在生产燃油取暖器的电子线路板的过程中,设计了一套电子线路板自动测试系统,可以在几秒钟内利用计算机自动测试线路板的各种功能,如果存在问题,测试系统会自动显示故障的类型和性质,由于采用机器自动测试,排除了人为的干扰因素,大幅度提高了测试的效率和产品的合格率。
1 测试系统结构
1. 1 线路板的设计
燃油取暖器的电子线路板各有4个模拟量、2个开关量输入信号和输出控制信号,如图1所示。一般,在线路板的设计中,只需要考虑线路板的输入、输出信号接插件的结构。在这里是用仿真的方法来实现测试任务的,由计算机向线路板输入测量信号并接收线路板的输出信号,所以在设计电子线路板的时候,需要在线路板上设计相应的测试点,把这些输入点和输出点安排在适当的位置,让计算机能够输入和检测这些信息。
图1 输入输出信号
1. 2 测试系统的硬件结构
为了能够向电子线路板输入和获得信号,需要设计一个测试夹具。当电子线路板放置在测试夹具上时,测试夹具的测试顶针正好与电子线路板上的所有测试点相接触,测试系统硬件结构如图2 所示。
图2 测试系统硬件结构
图2中:测试夹具由测试顶针、夹紧装置和单片机构成。夹紧装置和测试顶针使电子线路板能够可靠地与单片机进行信息的传送,单片机根据计算机发出的命令,向电子线路板输入仿真测试信号,使电子线路板工作在不同的工作状态,然后把测量到的信号,通过RS2232串行口传输给计算机,在计算机里判别电子线路板的工作状态,并以文字和图表的形式显示测试的结果。
2 RS2232串行通信的实现
2. 1 串行通信的实现
测试夹具中的单片机和计算机之间的数据传送是通过RS2232串行口实现的。计算机向单片机传送控制命令和数据,由单片机把信号传输到电子线路板上,然后再测量电子线路板的输出信号,通过串行口回传给计算机。串行口数据通信协议是:数据传输速率为9 600 bp s, 1位开始位, 8位数据位, 1位停止位,无奇偶校验位。由于仅仅是单片机与计算机相互传送信息,都是在生产现场工作,所以RS2232 串行口只需要接收、发射和地三根导线,也不存在传输距离的问题。电子线路板的信号都是开关量信号或模拟电压值,线路板输出的信号也是电信号,当通信传输速率为9 600bp s时,最快速度是每1. 04 ms发送一个字节。测试夹具中的单片机采用AT89C52芯片,它的逻辑电平与计算机的RS2232的接口电平不一致,需要在单片机和计算机的RS2232串行口之间设计一个MAX232芯片,该芯片可以实现把单片机的0 V、+ 5 V电压转换成RS2232接口的逻辑"1"电平( - 3~ - 15 V)和逻辑"0"电平( + 3~ + 15 V) ,MAX232芯片的应用结构如图3所示。
图3 MAX232芯片的应用结构
2. 2 VB的应用
VB ( visual basic)是计算机系统中主要的开发语言之一,它具有高效、简单易学的特点和强大的图形功能,支持面向对象的程序设计,具有结构化的事件驱动编程模式和良好的人机界面,提供了功能强大的通信控件MSCOMM,因此,应用VB语言可以方便地设计需要大量图形显示的应用程序。利用MSCOMM控件可以设置串行通信的数据发送和接收,对串口状态及串口通信的信息格式和协议进行设置。MSCOMM控件是一个标准的10位串行口通信,在发送和接收数据过程中触发ONComm事件,访问CommEvent属性来了解通信事件的类型。在电子线路板自动测试中,就是应用这种方法实现计算机与单片机的数据通信的。
2. 3 VB通信控件的程序设计
VB串行口的初始化程序如下:
Private Sub Form_Lopad ( ) ;串行口初始化程序
Comm1. InputLen = 0 ;设置串行口1
Comm1. Settings ="9 600, n, 8, 1";设置波特率、奇偶校验、数据位和停止位
Comm1. InputLen = 0 ;读接收缓冲区的数据
Comm1. InBufferSize = 255 ;设置接收缓冲区的大小
Comm1. OutBufferSize = 255 ;设置发送缓冲区的大小
Comm1. PortOpen = True ;打开串行口1
Comm1. SThreshold = 1 ;缓冲区空触发
Comm1. Rthreshold = 1;数据进入接收缓冲区触发接收事件
End Sub ;程序结束
此外还有数据发送和接收程序。数据发送程序是计算机向单片机发送控制命令和数据,使电子线路板进入工作;接收程序是接收单片机检测的数据,通过这三个程序,完成数据的串行通信工作。
2. 4 单片机串行通信程序设计
单片机与计算机进行串行通信,需要对AT
AT89C52 VB语言 RS2232串行通信 相关文章:
- 基于AT89C52单片机的超声波测距仪的设计(02-01)
- AT89C52单片机与TC35i的远程温度监测系统设计(02-24)
- 基于AT89C52控制的电池四参数检测系统设计(05-11)
- 基于单片机控制的数字频率计设计(05-15)
- 基于AT89C52的温室用温度监控系统设计(10-18)