SHIROのIchigoJam日記

マイコン「IchigoJam」(イチゴジャム)の電子工作とプログラミングをメインに

かんたん人数カウンター

※この記事は、「IchigoJam Advent Calendar 2019」に参加しています。

以前に、赤外線人感センサーを使って「人数カウンター」を作りました。
www.ichigojaman.jp
www.ichigojaman.jp
今回は別のセンサーを使って、IchigoJamに挿すだけで簡単に作れる人数カウンターです。

使ったセンサーはこちら。

このセンサーを、IchigoJamのピンソケットCN4に挿します。

センサー側 IchigoJam
GND(-) GND
Vout OUT1
VCC(+) OUT2

プログラム

  • 起動すると、カウントが始まります。赤外線センサーが人間を検知すると、LEDが点灯してカウントされます。
  • カウントは1時間ごとに区切られて、その時間帯の人数、開始からのトータルの人数が表示されます。
10 @ARUN:'*Counter*
20 CLV:CLS:OUT 1,-1:OUT 2,1
30 ?"=== COUNT START ===":?
40 H=0:CLT
50 GSB @PRTCOUNT
60 @TIMELOOP
70 I=IN(5):LED I
80 IF I=1 AND J=0 THEN GSB @COUNT
90 J=I
100 IF TICK()>3609 THEN CLT:M=M+1
110 IF M<60 THEN GOTO @TIMELOOP
120 '*HOUR PASS
130 BEEP:M=0:H=H+1
140 IF H>23 THEN H=0
150 C=0
160 ?:GSB @PRTCOUNT
170 GOTO @TIMELOOP
180 @COUNT
190 C=C+1:T=T+1
200 GSB @PRTCOUNT
210 RTN
220 @PRTCOUNT
230 ?"Hour=";H;"  Count=";C;"  Total=";T
240 ?CHR$(30);
250 RTN

例えばイベント会場などで朝の9時からカウントしたい場合は、40行の「H=0」を「H=9」に変えて、9時ジャストに起動すれば、実際の時刻と合います。
赤外線センサーは、デフォルトでは一度検知してONになると、3秒間ほど保持してからOFFになります。それが最短時間なので、家族や団体などで一度にたくさん人が通るとうまくカウントできません。
なお、センサーにVR(可変抵抗)が付いていて、ドライバーで回してON時間を調整できるのですが、そのままにしていじらない方がいいです。下手に回すと壊れてカウントできなくなります。私はそれで失敗して、センサーを1個ダメにしました(^_^;)