by Guido Socher (homepage)
��������:
Guido ϲ��Linux������Ϊ�˽����ϵͳ��ι�����һ����Ȥ���£�����ҲӦΪ������������Ƶ�����
Ŀ¼:
|
A Hardware watchdog and shutdown button
ժҪ:
����LCD������� �н�ʾ����ξ������ܹ���һ��������������LCD�������
ͨ����������Dz���Ҫ���е��ص�,������������Ӳ��������(���LCD����������г����Ѿ���Ʒ��)���Ҿ��к�����LCD����ͬ��������Ҫ�ص�.
- һ����������ֹͣϵͳ������
- һ�����Ź�����ϵͳ������
Ӳ��ֻ���ɺܶ���Ч�������ɣ������Ժ��������صõ����ǣ����е��������������5ŷԪ
ʲô�ǿ��Ź�?
���Ź��ڼ����ϵͳ����һ������ʵ�Ŀ�������Ӳ����������֤ϵͳ�������У����ܹ��ڻ��Ƿ�������(����ͨ������λ��������һ���˵�������?)�������������װ�����ҵ������豸.
���Ź���ʹ��˼·�ܼ�:��������벻ʱ�ضԿ��Ź�˵"���"���ÿ��Ź�֪������Ȼ�����У�������ֲ���ʧ�ܣ����Ź��Ķ����ͻ�����ϵͳӲ����λ��
����һ��Linux��������Ҫ�����²���Ϲ�����ƽ�����1-2�겻������������,������Ļ���ÿ���ܾͻ�������ô��̨����һ�����쳣���ҿ��Ź����ܽ������,����Ҫ���ʹ��CPU���ȵĴ����RAM(�μ� memtest86.com)��̫����IDE������...
���һ��Linuxϵͳ�ܹ��ڿ��Ź��ļ������˿ɿ�����������һ�꣬������ʲô���ɲ�ʹ�ÿ��Ź��أ��𰸺ܼ�:���Ź���ϵͳ���ɿ��������������Լ�������һ����
һ̨��������������һ������ϲ�Ϊ����֪���������������Ҳû����֪�����ǿ��ܾ������պø���ʥ����ǰ�����˶��ڼ����ʱ��������Ϊ�˷�ֹ��Щ�����Ź����Եú�����.
���ǿ��Ź����ܽ���������⣬����ȱ�ݵ�Ӳ����ǰ��Ҳ���Ե�����Ϊ������ʹ�����ϵͳ��һ�����Ź�����ҲӦ��ע��ȷ��һ�����õ�Ӳ������(���ٲ�Ӧ����BIOS��BUG��оƬ������BUG)�Լ��ʶȵ���ȴϵͳ��
���ʹ�ÿ��Ź�?
���Ź�����ƽ���Ϊ�˱�֤�û�����������У�Ϊ��ӵ��һ��ȷ�ŵġ��ȶ�ϵͳ����������������Ӧ�ó���(����������ݿ�)��ϵͳ��Դ(���̿ռ䣬CPU�¶�)����Ҳ����ͨ���������û�Ӧ�ó������ﵽĿ��(crontab),������Щ��������LCD���ư�����,�ڴˣ��Ҳ�������.
����:���Ǹ�С�ű����ܹ�����������У��ڴ潻���Լ�����Ӧ�������
#!/bin/sh
PATH=/bin:/usr/bin:/usr/local/bin
export PATH
#
# Monitor the disk
# ----------------
# check if any of the partitions are more than 80% full.
# (crontab will automatically send an e-mail if this script
# produces some output)
df | egrep ' (8.%|9.%|100%) '
#
# Monitor the swap
# A server should normally be dimensioned such that it
# does not swap. Swap space should therefore be constant
# and limited.
# ----------------
# check if more than 6 Mb of swap are used
swpfree=`free | awk '/Swap:/{ print $3 }'`
if expr $swpfree \> 6000 > /dev/null ; then
echo "$0 warning! swap usage is now $swpfree"
echo " "
free
echo " "
ps auxw
fi
#
# Monitor the network
# -------------------
# your _own_ IP addr or hostname:
hostn="linuxbox.your.supercomputer"
#
if ping -w 5 -qn -c 1 $hostn > /dev/null ; then
# ok host is up
echo "0" > /etc/pingfail
else
# no answer count up the ping failures
if [ -r /etc/pingfail ]; then
pingfail=`cat /etc/pingfail`
else
# we do not handle the case where the
# pingfail file is missing
exit 0
fi
pingfail=`expr "$pingfail" "+" 1`
echo "$pingfail ping failures"
echo "$pingfail" > /etc/pingfail
if [ $pingfail -gt 10 ]; then
echo "more than 10 ping failures. System reboot..."
/sbin/shutdown -t2 -r now
fi
fi
# --- end of monitor script ---
����������Щ��crontab�����ÿ��15������������ű�һ��
1,15,30,45 * * * * /where/the/script/is
���Ź���Ӳ�����
�̵�����������ÿһ�ֲ�Ʒ�������Լ�������ص㣬�����ǵĵ�·��˵,����Ҫ�������ڲ�����ֵ�������Կ�����������ͼ��һ��Ϊ 5V,500 ŷķ����ļ̵�����һ��Ϊ5V��120ŷķ����ļ̵�����������������е�ŷķ���������̵����ĵ���ֵ��ͨ�����ԭ��ͼ�Ŵ�鿴��ͼ.
120 ŷķ�̵���:
500 ŷķ�̵���:
�رհ�ťΪһ������RTS��CD�ϵ��ᴥ���ء���·ͼ�Ͽ������е�İ������ΪEagle��˾û���ṩһ�����õ�ͼ�ꡣ
��������û���г���ϸ��Ԫ���嵥��������������ԭ��ͼ�����ҵ���Ҫ��һ��(���������Ӵ����ߵ�DB9��ͷ )������Ķ�����������ʹ�������ͺŵ��滻����1N4148.�Ҹ�����Ϊ��500ŷķ�̵����ĵ�·Ҫ��һЩ,��Ϊ������ҪR4��2000uF(����2200uF)���ݣ�����C1ֻ��Ҫһ����С��1000uF���ݾ��ˣ�
��ע��:��120ŷķ�ĵ�·������Ҫһ����ƣ�����500ŷķ��·����Ҫһ���̵ƣ��ⲻ��������ģ���Ϊ�̵Ƶ�ѹ���Ⱥ��Ҫ��
��·����Ʒ��棬Eagle�ļ�������·�帯ʴ���ע�Ͷ��ں������������Eagle CAD��Linux�µ�������������� cadsoftusa.com.
��·����ι���
���Ź�Ӳ����·Χ��NE555ʱ��оƬ������оƬ���������Ƚ�����һ��RS������������5K�����ṩ�Ƚ����IJο���ѹ��ֻҪ��������(6)����2/3��Դ��ѹ
�ͻ�����RS��������λ(״̬��Ч)��
�����������ǵĵ�·ͼ:�������ô��ڵ�RTS�����ṩ��Դ��ѹ������RS232���ڵ�ѹ��+/-10V����ˣ������ڵ���C1ǰ�����Ҫһ�������ܡ�C1���ٳ�ŵ���ά��ʱ���ṩϵͳ��Դ������C2��Ƚϻ�����ͨ��4.7M �����ŵ硣RS232����DTR�����ϵ�������ƾ����T1�ŵ�����C2�ϵĵ��.����������û��(���ڼ��������)����C2�ϵĵ�ѹ����(��Լ40��)�ͻᳬ��2/3��Դ��ѹ���Ӷ�����RS��������λ��
����C1,����R2��LED����ܣ��̵���������Ҫ�������ԣ������ü̵������ٱպϵ���������C1����C1�ṩ�ĵ����������ü̵�����ʱ��ά�ֵ�ͨ�����DZ���ͨ��"����""��λ"��1-2��.���رռ̵�����ͨ״̬��
LED�����һֱ���ַ���ֱ��ϵͳ�ڸ�λ�Ժ����»ָ�����.
��һ��������ԭ��ͼ�������CD�����ϵĹػ���ť��ֻҪ���ᴥ��(����15��)֮�����������ͻ�����"shutdown -h now"����ر�ϵͳ�����������Ǹ�����ϵͳά���õĺͿ��Ź�����ϵ��
��������
����������һ��С��C���������/etc/init.d/�ű����У�����ͣ�ط�תRS232��RTS���Ų���ÿ��12���ӷ���һ�������DTR(���Ź��Ķ�ʱʱ��40��)�����������رռ����������ͻ�ر�RTS�źŲ��Ҹ������һ��DTR���塣������Ŀ�ľ����ڳ�ʱ����֮ǰ�ŵ�����(C1)�ϵĵ��.��ˣ���������£����Ź��Ͳ����ܵ����������Ҫ��װ���������linuxwd-0.3.tar.gzѹ����,�����Դ� �ļ��������� �õ�����ļ���Ȼ���ѹ������make������б��롣
���ҿ������linuxwd��ִ���ļ���/usr/sbin/linuxwd.�༭��ǰlinuxwd_rc�ű�(��redhat/mandrake,����linuxwd_rc_anydist ������������͵�ϵͳ)��Ȼ��������ȷ�Ĵ��ڵ�ַ(�� ttyS1=COM2 ���� ttyS0=COM1)��Ȼ�����rc�ű���
/etc/rc3.d/S21linuxwd
��
/etc/rc5.d/S21linuxwd
����湦����.
ϵͳ����
�����Ѿ����Ӻ������е�Ԫ���Ժ������������ӵ������֮ǰ���б�Ҫ�IJ��ԡ�����������Ҫ���ӵ�����RTS���ŵ��߽���9-10Vֱ����Դ�����ҵȴ�40-50����.���ͻ������̵����պϵĺ����������ͬʱ�����Ҳ�ᷢ����ע�ⲻ���ü̵������ֳ�ʱ�䵼ͨ��LEDָʾ�ƽ��᳤����ֱ�����ѽ�DTR���ŵ��ź��߽�+10V��
�����������������Ժ�������ȫ���������ӵ�������ȥ�ˣ����linuxwd������һ������ģʽ���������һЩ��ӡ��Ϣ��ͣ��һ��ʱ��ŷ��������DTR������ģ��ϵͳ��������ʹ������linuxwd -t /dev/ttyS0
�� linuxwd �����ڲ���ģʽ (ʹ�� /dev/ttyS1 �������Ӳ��������COM2��).
Ӳ����װ
RS232�ӿ��ź�����:
���������� 9 ��D�Ͳ�ͷ��
9 PIN-connector |
25 PIN-connector |
Name |
Dir |
Description |
1 |
8 |
CD |
input |
Carrier Detect |
2 |
3 |
RXD |
input |
Receive Data |
3 |
2 |
TXD |
output |
Transmit Data |
4 |
20 |
DTR |
output |
Data Terminal Ready |
5 |
7 |
GND |
-- |
System Ground |
6 |
6 |
DSR |
input |
Data Set Ready |
7 |
4 |
RTS |
output |
Request to Send |
8 |
5 |
CTS |
input |
Clear to Send |
9 |
22 |
RI |
input |
Ring Indicator |
��·�尲װ��RS232���ڵ�ʱ��һ��Ҫ������������ͨ�����Ҽ�����ĸ�λ��ť������ϵͳ��λ�ߣ����Ұ������ӵ��̵���������ˣ��̵���������˲����ڸ�λ��ť�ϡ�
����
���Ź�����100%��֤ϵͳ���ȶ������ǣ��������ϵͳ�İ�ȫ���ܣ�����Ҫ����������ϵͳӲ����λ�Ժ��ļ�ϵͳ����ҵ�û����ɵĹ�����λ�ã����µ���־�ļ���������æ��������û����ͼ����������������ܵĿ��Ź��dz����ˣ�Ҳ�����������Ҽ����ʹ���Ʒһ���á�
�ο�
����ƪ���·�������
ÿƪ���¶��и��Եķ���ҳ�档�����ҳ����������ύ���ۣ�Ҳ���Բ鿴�������ߵ����ۣ�
2002-07-24, generated by lfparser version 2.25