謝作如 蔡慧敏
鬧鐘在我們日常生活中十分常見,幾乎所有的手機都自帶了鬧鐘功能。不知道大家是否記得指針式鬧鐘(如圖1)。現在的鬧鐘,純機械的幾乎絕版了,就連指針式的電子鬧鐘也不多見了。利用開源硬件,做一個復古的指針式鬧鐘,讓它能定時鬧鈴,應該是挺有趣的。

● 器材和原理
鬧鐘至少需要指針和鈴聲。因此,舵機和蜂鳴器是必要的電子模塊。舵機可以做指針,每分鐘轉動一定的角度。當舵機轉到預定的角度(預定時間)時,停止轉動并讓蜂鳴器響起,這就是定時鬧鐘的核心功能了。至于控制板,當然選擇Arduino了。
舵機的工作過程是把所接收到的電信號轉換為電動機軸上的角位移或角速度輸出,可以精確控制其旋轉的角度。為了辨別舵機的轉動,我們需要做一個指針固定在舵機上。鬧鐘的原型如圖2所示。

● 建模和編程
我們先確定做一個1小時的鬧鐘,指的是最大時間長度(最大量程)是1小時的鬧鐘。然后找一張紙剪成圓形,用一個畫了刻度的半圓(180度)來表示鬧鐘的指針。簡單計算下,舵機每分鐘轉動的單位角度是3度,即180/60=3(度)。如果要定時15分鐘,當舵機轉過45度時就要“鬧鈴”了。
你能否歸納出定時n分鐘時舵機轉過的角度?答案就是3×n度。為了讓舵機順時針轉動,舵機的初始角度要設定為180度,即從180度到0度旋轉。那么,舵機的角度隨時間的增加而減小,因此n分鐘的定時,舵機停止轉動的角度就是(180-3n)度,如表1所示。

弄明白原理,就可以開始編程了。我們采用的編程工具是Mixly(米思齊)。……