发新话题
打印

如何在 FreeBSD 上使用 UPS

如何在 FreeBSD 上使用 UPS

  UPS 在跳电之时大约能撑个十来分钟以上,但是如果你人不在电脑旁,
最後还是面临 UPS 没电,电脑被迫 shutdown 的情形。
飞瑞的 UPS 有贩卖一种叫电掌柜的软体来帮你自动 shutdown,
但是电掌柜是 for Win95 的,而 FreeBSD 或是 Linux 都还没有类似的软体,
我想到一个方法,实作上也已经成功了。兹将步骤列在以下,
有需要的网友自己动手做吧!! ^_^

目前就同学手边有的 UPS,已经做出 飞瑞 和 Upsonic 的。
底下是给飞瑞的 A-8941 500VA 用的。
我们这边的测试目前是没发现问题,如果你在使用上有问题,欢迎向我们提出。

【 零件清单 】
9公 一个
25母 一个
单心线 四条
电阻 1K 二只


【 飞瑞 UPS 的 output 规格 】
可迳自参考飞瑞 UPS 手册的 第 6 页 -- 1-5 介面通讯埠。
Pin Meaning
-----------------------------------------------------------------------
 2 市电异常时 ON (close)
3 市电正常时 ON (close)
 5 Battery Low 时 ON (close) 距 Shutdown 剩一分钟
6 Remoto ShutDown 用
 7 Common 共接点 (以上接脚接和这个共接)

=======================================================================

【 实作 】
其中,我选接 UPS 的 2、5、7 三条线,
分别对应 COM2 的 DSR、CTR、Vcc 脚。
而 COM2 的 DTR 脚(20) 则维持 High 提供 Vcc 的讯号。
(RS-232规格上是写 3~15V,实测为 10V 左右)。

将 9公的 pin7 连 Com2 的 pin 20,
pin 2 连 pin 6,pin 5 连 pin 5 (见下图)。
其中再将 COM2 的 pin 7 (Gnd) 和 COM2 的 pin 6 和 pin 5 跨接 1 K 的电阻。

UPS COM2
output( 9公) Input(25母)
=========================================
Pin 7 ------------------------ 20 Vcc

Pin 2 ----- ------------------ 6 DSR (跳电时为 1 )
>
< R (电阻 1K)
----------------- 7 Gnd
<
> R (电阻 1K)
Pin 5 ----- ------------------ 5 CTR (Battery Low 时为 1 )

【 source 何处寻 】

您可以到 ftp://kavalan.csie.nctu.edu.tw/pub/UNIX/source/UPS_deamonPT.tar.gz
抓回来,直接打 make 就可以执行。
目前只做 for FreeBSD 的。Linux 应该很好 port。

【 How To Run it 】
将 9公接 UPS 後方的 output, 25母接主机後面的 COM2,然後执行这个程式,
执行时,请用 sudo,否则 access COM2 时会 permission denied。
目前预设的情形,只有显示 UPS 的状态,如果你要加入 shutdown 的功能,
在 source 中第 52 行 :

case 2:
case 3:
printf("UPS 电力不足 ......\n");

 <<< ---------insert here

break;

把 system("shutdown -h now"); 加入 insert here 的地方,再重新 make 就可以了
这程式直接跑就可以用了,不用加参数,
% sudo serial_port
这样就可以了。

附上一些东西给 COM1 用的,更详细的资料,如果有人需要,我们再贴出来。

【 Device Name 】
在 FreeBSD 中,device 的名称如下:
/dev/cuaa0 COM1 port
/dev/cuaa1 COM2 port

【 COM Port 接脚名称 】
接脚名称 9 pins 25 pins 讯号意义
---------------------------------------------------------------------------
DCD (Data Carrier Detect) 1 8 载波侦测。表示modem和对方连上
RxD (Received Data) 2 3 接收资料的接脚。
TxD (transmit Data) 3 2 传送资料的接脚。
DTR (Data Terminal Ready) 4 20 告诉 modem,PC 已经备妥。
GND (Signal Ground) 5 7 接地脚。
DSR (Data Set Ready) 6 6 Modem 已经开启且准备好。
RTS (Reguest To Send) 7 4 叫 Modem 准备接收资料。
CTS (Clear to Send) 8 5 Modem 已经准备好接收资料。
RI (Ring Indicator) 9 22 电话铃响。

--
今天的美丽 明天别忘记

TOP

发新话题