之前一篇文章,我拆了一个波音A15808时钟,这次说一下如何驱动。其实本来是懒得折腾的,正好有个朋友手上有一个A15802时钟,求助我帮他做一个驱动器,于是便有了这个小小的工程。



1. 适用范围

目前已知本文适用的航时钟型号为:
A15551-P1
A15802
A15808
其他航时钟如果有与上述三者同样的航空插头,大概率也可适用。



2. Reverse Engineering and pinouts

上述时钟型号的共同点是,背后均有一个12针的航空插座。据网上资料,插座型号为MS27034H12B12PN。

这一系列的时钟采用28V供电,且内部不含时钟基准,需要外部输入60Hz的时基信号。
A15551由于内部为步进电机驱动计时机械,需要两个相位差90°的方波。而A15802/A15808由于改进为电子计时,只要单相方波即可运行。

连接器的定义:

Pin# A15551 A15802/A15808
1 Lamp Lamp
2 Lamp/Shell Lamp/Shell
3 +28V +28V
4 GND GND
5 LAMP/Shell Lamp/Shell
6 60Hz_Phase1 60Hz
7 60Hz_Phase2 NC
8 RUN/STOP Switch (NO) Chronometer_IO1
9 Chronometer relay Internal GND
10 RUN/STOP Switch (NC) Chronometer_IO2
11 NC Display dimming
12 NC Unknown (measures 10V)

信号具体说明:
  1. Lamp为表盘照明灯泡供电,采用4颗WI-7041,电压为5V,单个灯泡电流115mA
  2. Lamp/Shell为灯泡的另外一极,同时连接机壳用于接地。值得注意的是照明电源和外壳与时钟的电子部分完全隔绝。
  3. +28V电源输入的范围其实很宽,实测到15V附近时钟仍能正常运行。
  4. 我抄了一下60Hz时钟信号输入后面的电路,发现两个时钟都是过了隔直电容后通过电阻分压接到一个三极管上,放大后给后续电路使用。根据估计和实测,5V电平完全可让电路正常工作。
  5. 对于A15551,要想让秒表可正常工作,需要短接8-9脚或9-10脚。其中,8/10号脚在内部连接到面板上控制秒表的按钮上,按钮带自锁,按一下将8脚接电源,再按一下将10脚接电源。9脚在内部连接控制秒表运转/复位的时间继电器。
  6. 对于A15808,秒表的控制更为复杂。以下是抄出来的信号处理电路。
    其中,8号和10号针脚各自连接到一个与非门,同时还通过两个二极管连接到面板上的RUN/STOP/RESET按钮。按下按钮,两个信号线同时被拉低,从而控制后续的秒表逻辑。
    当8号和10号中的任意一个引脚从外部被拉低(与9号脚短接)时,也会触发秒表动作。但如果触发的是8号脚,再次拉低8号不会起到任何作用,秒表会继续运行,直到10号脚被拉低,秒表停止。此时10号脚又失去作用,需要拉低8号脚,触发秒表复位。同理,如果开始时触发的是10号脚,则后续需要依次触发8/10号脚,完成停止和复位操作。
    对于这么奇怪的控制逻辑我也不清楚其作用。不过大致猜测,在波音747飞机上,主驾/副驾和机师都有一个时钟。可能他们的时钟8/9/10号信号线并联在一起,从而可以同步三者的秒表,方便三个人之间配合工作。
  7. 对于A15802/A15808,11号脚可以控制灯丝显示管亮度。0-5V分别为最暗(熄灭)和最亮。我也尝试用PWM驱动,也可以达到控制目的。


3. 控制板

其实,用随便啥东西,甚至一个Arduino就可以驱动时钟走时了,不过这样送朋友毕竟不太美观。因此我折腾了一个控制板,前后花了大约三天。控制板采用Attinny214单片机+RX8025T。我没有用RX8025T的RTC功能,只是用了32768Hz的时钟输出来计时。由于RX8025T内部是DTCXO,理论上可以达到±5ppm的精度,约等于一年误差不超过160秒。
控制板采用24V输入,满足时钟工作完全没问题。同时加了背光灯和显示亮度调节/自动控制。按钮短按为开关表盘背光,长按为开关自动亮度控制。
连接器是比较头疼的问题。经测量,连接器的针脚直径1mm。我在某宝找到了一种冠簧连接器比较合适,但卖家存货所剩不多,我把剩下的几十根全买回来了。


用照相机拍连接器,ps拉正后测量尺寸,画封装。


最终做出来的成品:



PCB和单片机工程请见附件。
Atmel Studio Project
Altium PCB Project

Attiny214采用最新的UPDI单线协议下载,下载工具推荐使用pyupdi。
https://github.com/mraardvark/pyupdi



4. Bonus

在A15802/A15808上,除了原有的12针连接器,还多了个非常大的航空插头。然而实际用上的针脚却非常少。我发现,这个插头实际有用的除了一个地线外只有两个脚,用于输出时间戳信号。时间戳信号为一串RZ码,采用BCD格式,每隔100ms发送依次。两个信号脚的输出除了极性相反以外没有任何区别。我猜这个信号或许是用于飞行记录仪(FDR)或者应答机?
(以下波形代表当前时间为00:03:52)


~完,希望以上信息对你有点用~

Comments

2020-04-04

⬆︎TOP