采用单片机AT89S51和光电开关实现缝纫机生产线计件系统设计
2023-10-10 来源:elecfans
随着现代生产的规模化发展,传统人工统计产品的方法难以做到及时准确,为了对自动生产线上的零件或成品进行动态管理和统计,需要安装必要的自动检测与计数装置。一方面可实时显示产品的数量等信息,另一方面可向计算机管理系统提供动态数据,为过程控制提供依据。
本系统是为某缝纫机厂装配线设计的,该厂目前共有20条缝纫机生产线,每条生产线都需要有计件系统。系统应完成的功能包括实时检测并显示生产线上产品数量,能显示时间、计划产量等数据,同时可在线设定参数,向主控室传送数据。
1 硬件系统的组成
系统采用AT89S51为主控制器,由键盘、信号检测、看门狗、时钟、显示、通信等电路组成,系统框图如图1所示。
AT89S51是一个低功耗、高性能的CMOS 8位单片机,其芯片内含有4 kB的E2PROM,无需外扩存储器,电路简单可靠。本系统时钟采用6 MHz,P0口为数据口,P1.0~P1.6接键盘电路,P2口用于地址控制,P3.3,P3.4和P3.5用于接信号检测电路,P1.0接看门狗复位电路,为其提供周期输入信号。
信号检测电路用于检测生产线上产品的数量,当生产线上有产品通过时,信号检测电路给单片机提供相应数量的脉冲信号,AT89S51利用片内定时/计数器进行计数。每正向通过1台产品,计数器“加1”。显示电路需显示:当前时间、计划产量、实际产量等数据,其中当前时间信号由时钟芯片DSl2887产生,实际产量为目前实际生产出的产品台数即计数器当前数据,计划产量是当天计划总台数由键盘输入。系统采用串行通讯,单片机的TXD和RXD通过MAX485与上位机相连。
1.1 看门狗复位电路
看门狗复位电路采用美国Dallas公司生产的微处理器监控芯片DSl232。DSl232采用8脚DIP封装,具有性能可靠、使用简单、价格低廉的特点,应用在单片机产品中能够很好地提高硬件的抗干扰能力。DSl232具有如下功能:微处理器掉电或电源电压瞬变降低时可自动复位微处理器;在微处理器失控状态下可以停止和重新启动微处理器;精确的5%或10%电源供电监视。在DSl232内部集成有看门狗定时器,当DSl232的周期输入端ST端在设置的周期内没有有效信号到来时,DSl232的RST端将产生复位信号。这一功能对于防止由于干扰等原因造成的微处理器死机是非常有效的。看门狗定时器的定时时间由DSl232的TD引脚确定。本系统中TD接地,定时器时间为150 ms。P1.0接DSl232,为其提供周期输入信号。RST输出信号反向后接单片机外部中断INT0。
1.2 时钟电路
时钟电路采用美国Dallas公司推出的8位并行接口实时时钟/日历芯片DSl2887,其内置一个锂电池,断电后能运行10年以上而不丢失数据,具有计秒、分、时、日、月、年、星期信息,并有闰年补偿功能。对于一天内的时间记录,有12小时制或24小时制两种模式,该时钟芯片具有Motorola和Intel两种总线时序选择方式,具有128 bit RAM,所有RAM单元都具有掉电保护功能,可用作非易失性RAM。AT89S5l与DSl-2887接口电路,如图2所示。
1.3 键盘与显示电路
显示电路由20个共阳极数码管及其驱动电路组成,其中计划产量、实际产量各由4位数码管显示,当前时间由12位数码管显示。数码管由带锁存功能的芯片CD4511驱动。图3为两位数码管的驱动电路,CD4511的数据信号由单片机P0口数据经驱动后得到,CD4511的片选信号由P2.0~P2.3经4/16线译码器译码后得到。
键盘电路的作用主要是确定系统的工作状态及设定参数,工作状态有两种,一种是设定状态,另一种是运行状态。在设定状态下可通过键盘设定计划产量,修正当前时间等参数。运行状态下可对生产线产品进行计数,同时可在线修正实际产量。按键有:左移键、右移键、加一键、减一键、设定\运行键、暂停键等。键盘电路接单片机P1.0~P1.6,键盘电路中有阻容电路组成的消抖电路,用于消除按键的抖动带来的干扰。
1.4 信号检测电路
信号检测电路是整个系统的关键,要检测自动生产线的零件或产品数量,可在生产线上的合适位置设置检测点。检测方式可采用接触和非接触两种方式,但由于在大多情况下,产品在流水线上的位置难以确定,采用接触式检测方式会存在一定的困难,而采用非接触式检测方式更具优越性。本系统中传感器采用光电开关BR85-BP-ST7X/E。光电开关采用光电元件作为检测元件,首先把被测物的变化转变为光信号的变化,然后借助光电元件进一步将光信号转换成电信号。光电检测又有反射式与透射式两种,本系统采用反射式。反射板式传感器将发射器和接收器集成为一体,发射器发出的光线经过反射镜反射回接收器,当被检测物体经过且完全阻断光线时,光电开关就产生了检测开关信号。
信号检测电路如图4所示,其任务是检测生产线上通过产品的数量,IN0、IN1为光电开关输出信号,低电平有效。电路把光电开关采集到的信号经整形、滤波等处理后等送入单片机进行计数。在生产线上经常会出现有问题的产品拉回重新检验的情况,因此电路应能判断产品的运行方向,凡正向通过1个产品,计数器“加1”,反向通过1个产品,计数器“减1”。为实现这一功能,在生产线上装了两个光电开关,根据有效信号进入单片机的顺序来判断产品的运行方向。
2 系统软件设计
系统软件主要包括主程序、日期数据采集子程序、按键处理子程序、中断子程序、显示子程序和通信子程序等。主程序主要完成器件的初始化,并判断有无按键按下、有无中断请求,然后根据判断的结果调用相应的子程序。中断子程序用于计数以及特殊情况的处理。日期数据采集子程序完成相应的数据采集、处理和保存,按键处理子程序完成参数的设置,而显示子程序用于显示各数据,通讯子程序完成与上位机的通信。主程序框图,如图5所示。
3 实验结果
经过多次现场调试和实验,包括修改信号检测电路的滤波、延时以及软件滤波参数;调整两个光电开关之间的距离,以及传感器的照射距离,避免误操作;同时传感器的安装位置也进行了反复的修正,避免较强的自然光或太阳光的直射,以免降低灵敏度。表1是使用本装置进行了5次实物校验的实验数据。
实验结果表明,此生产线计件系统计数准确。
4 结束语
以AT9S51单片机作为系统的控制器、以光电开关为传感器的生产线计件系统,具有结构简单、成本低的特点。经测试,该装置工作稳定可靠,没有发现误动作,可广泛应用于仓储、生产流水线等场合的数量统计。