本文向大家介绍一种简单易行的袖珍计算机用于自动控制及检测系统的方法。只要学会BASIC语言,熟悉一些比较简单的电子电路,就能按此方法在计算机应用方面做一个初步的偿试。袖珍计算机和其它单板机或系统机相比有以下优点:(1)体积小、价格低、功能强。(2)用于工业控制系统中有较强的抗干扰能力。(3)机中的RAM就相当于EPROM。因为它可以直接改写用户程序。对于控制应用来讲它能在线(on-line)编程。(4)显示,打印合为一体,自成一个小系统。不足之处就是工作速度较低,但是它可以满足大多数工业控制的需要。本文中以SHARP PC-1500袖珍计算机为例。其机型在此基础上稍做改进即可使用。
输出控制接口电路
袖珍机要用于自动控制中,首先要开辟一个输出控制接口。它和其它专用系统机、单板机不一样;没有专用于自动控制的并行接口。这里介绍利用机内蜂鸣器和录音机的遥控输出接口做控制接口。这两个输出信号均可用程序控制,所以通过编程和设计一个专用的接口电路便能进行自动控制了。下面介绍这种接口电路的工作原理,参看图1。

在图1电路中CD4518是计数器。该计数器将CP端输入的脉冲计数,由Q\(_{1}\)~Q4输出。由于本输出接口只有8路,所以只用Q\(_{1}\)、Q2、Q\(_{3}\)做输出就够了。Q4用来做复位信号。CD4051是八选一模拟开关其各输出端D\(_{0}\)~D7对应A、B、C、S、E的关系如下表所示。

A、B、C是信号的输入端,这三个输入端共可输入八种状态的信号即000~111。这八种状态的输入信号分别与八个输出端相对应,当输入某种状态的信号时,将使八路输出中的一路被选通,有信号输出。如A=0,B=0、C=0时D\(_{0}\)被选通。输出接口电路中的CD4013为双D触发器。共用四只。有八个D触发器,分别与模拟开关的D0~D\(_{7}\)相接。通过触发器输出八路信号。由同轴电缆将PC-1500打印机的磁带机控制插口REM1与此接口电路连接。 REM\(_{1}\)实际上是一个开关。受指令“REM OFF和REM ON”的控制,前者使开关为开态,后者使开关为闭态。利用这两条指令可以控制计数机输出图2所示的八种脉冲串。为了易于分析,先不讨论软件。这里以第8路信号为例进行分析;使用时先用手动复位(若是刚开机,则不需手动复位,本电路有开机自动复位功能),使各触发器及CD4518的输出端都为0状态。然后用“RUN”命令运行控制程序。使计算机输出图2所示h脉冲串。从图中可以看出前6个脉冲是窄脉冲,第七个脉冲是宽脉冲;当前六个脉冲通过CP端送进CD4518后,这时计数器的计数值为6(二进制的110),使CD4518的输出端Q3、Q\(_{2}\)、Q1为1、1、0状态。这6个窄脉冲同时还经PC积分电路送到反相器Y的输入端,由于RC的时间常数大于窄脉冲的一个周期,故反相器没有输出。此时CD4051不工作,接口电路的输出低电平。(从可靠性考虑,RC电路的时间常数应大于7倍窄脉冲周期时间)。当第七个宽脉冲到来时。此时计数器的计数值为七(二进制111),CD4518的输出为1、1、1。此时由于RC时间常数小于宽脉冲的脉宽,所以反相器Y输出低电子,使CD4051的D\(_{7}\)端输出高电平,去触发D触发器CD4013,从而使第8路输出高电平。由于D触发器具有存锁存功能,故当第七个宽脉冲过去一段时间后(大于RC的时间常数)再来一个窄脉冲将使CD4518的输出端Q4、Q\(_{3}\)、Q2、Q\(_{1}\)为1、0、0、0,这时Q4=1,经或门使CD4518复位,即输出为0、0、0、0以便让下一个控制信号启动。如果要使第8路输出再回到低电平,只须再输入一串同样的脉冲串便可使D\(_{7}\)翻转为低电平,从而使第8路输出为低电平。1~7路的控制过程和上述相同。这个接口电路的工作过程类似于计算机的串行接口。

下面给出一个可以产生a~h脉冲串的程序,并对软件进行分析。这是一个手动调试程序,欲改为自动程序,只要根据被控对象稍加改动即可。
程序一
10 INPUT A
100 FOR I=1 TO 8
110 IF I=A THEN 30
120 RMTOFF:WAITO:RMTON:GOTO140
130 RMT 0FF:WAIT100:BEEP:RMTON:
WAIT50
140 NEXT I
150 GOTO 10
该程序第10句键盘输入A的值可确定计算机输出第几种脉冲串。A的值取在1~8之间,产生的脉冲串1~7对应图2所示b~h波形。如果输入大于8或小于1的数,则电路只输出8个窄脉冲,相当于无控制输出,然后又回到第10句。第100句设循环变量,因为输出控制脉冲串中的脉冲个数是8个,所以循环次数为8;第110句判断是第几路输出;第120用来产生一个窄脉冲。句中RMTOFF后等待的时间很短。130句用来产生一个宽脉冲,使得RMTOFF后面的等待时间较长。第140句判断循环是否结束;第150句使程序反回第10句,可以继续键入下一个控制代码。程序中WAIT、BEEP为PC-1500机的扩展BASIC指令,WAIT使程序执行到该句时等待一段时间,这段时间由WAIT后的数字决定。BEEP可以使机内蜂鸣器发声,这里使用这两个语句主要是为了便于调试。
对上面程序一略加改动,就可以变为一个时间控制程序,例如在某个时刻控制被控电路启动。改动部分如下:
10 PRINT TIME
20 IF TIME=××××.××THEN-LETA
=7:GOTO100
30 IF TIME=××××.×× THEN LETA
=7:GOTO100
(接程序一)
PC-1500机内设有电子钟,且具有TIEM语句,第10句就起一个显示电子钟时间的作用。
在这个程序中TIME的两个时间是不一样的。它的作用是使20句在某一指定时间将第8路输出端置为高电平。30句在另一指定时间将第8路置为低电平。
上述电路是一个仅有8路并行输出的接口电路,若控制对象多于8路只要在这个电路的基础上增加一些硬件就行了。现给出一个有16路输出的接口电路,如图3所示。这里利用了4518双BCD计数器的另一个计数器的Q′\(_{l}\)、Q′2输出做4051I、4051II的片选信号。其逻辑关系是S=Q\(_{′}\)2Q′l:S\(_{1}\)=01;S2=10。只有S\(_{1}\)或S2被选中时其对应4051电路才会受控于控制脉冲。上述两种电路控制脉冲是从REMI送来的。

输入接口电路
对于自动控制来说要构成闭环系统没有输入接口电路是不行的。PC-1500袖珍机没有专用于采集数据的输入接口电路。这里向大家介绍一种采用键盘自动输入式接口电路。对于初学者来说不必了解键盘的工作原理,只要按下某个键,则该键下面的两根线就短接起来,该键就起作用了,了解此点,就完全可以理解本电路了。
首先要引出两个数字键和一个回车键ENTER下面的两根线。虽说是三个键的引线,共有六根线但只需引四根线就行了。因为计算机键盘是矩阵式结构。每个键的引线都不是独立的,而是与其它键共用一根字线或位线。对PC-1500来说只需引出7和ENTER两个键的四根引出线就行了。接引线时可拆开PC-1500的机壳,找到7键的对应电路板的位置,将它下面的两根线用细线引出,再用同样方法将ENTER键引出,然后将计算机装好试验。首先将7键的两根引出线短接一下,这时液晶显示板上应显示出“7”。再用键盘输入2*3,并将ENTER键的引出线短接一下,显示板上应显示“6”,若显示正常,则继续找出0键的两根线。将四根线编为J\(_{1}\)、J2、J\(_{3}\)、J4。J\(_{1}\)、J2对应7键,J\(_{3}\)、J4对应ENTER键。然后将J\(_{1}\)对J2、J\(_{3}\)分别短接;若其中有一次使显示板显示“0”,那么0键的两根线就找到了;否则继续将J2分别对J\(_{3}\)、J4短接,只要接线元误,其中必有一次使显示板出现“0”。
图4是输入接口电路图。当被测点为高电平时,此电路使J\(_{1}\)、J2短接(相当于按下7键)当被测点为低电平时此电路能使J\(_{3}\)、J4短接。(相当于按ENTER键)。(待续)(李万隆)
