SHIROのIchigoJam日記

IchigoJamの電子工作とプログラミングをメインに

ローラー距離計 V2

IchigoJamとフォトリフレクタを組み合わせた「ローラー距離計」を先日作りましたが、その後いろいろと改造しました。

  • フレームを二重に。タイヤもオフロード仕様にして全体を強化。長さはコンパクトに。
  • シールド基板を作り直し。フォトリフレクタ部分を子基板にして、位置がずれないように強化。
  • フォトリフレクタのバイアス抵抗を1kΩに変えて、反応を高速化。それに伴ってプログラムも変更。プーリーの穴に反応した時にLEDを光らせるようにした。
    ただ、高速化の恩恵はあまり感じません。以前よりは速く転がしても追随性が少し良くなったかな?という程度です。
  • 細かい事ですが、基板をIchigoJam Sに変更して、電源スライドスイッチを横型にしました。普通の縦型だとOLEDが邪魔で操作しづらいので。

プログラムリスト

10 '*Roller Measure 2
20 CLV:CLT:GSB @OLEDINIT
30 D=33
40 B=ANA(2)
50 CLS
60 ?"Roller":?"Measure"
70 LC 0,3:?0;"cm"
80 GSB @OLEDOUT
90 @LOOP
100 IF BTN() RUN
110 A=ANA(2)
120 IF B<12 AND A>=12 GSB @COUNT
130 B=A
140 GOTO @LOOP
150 @COUNT
160 LED 1
170 L=L+D
180 LC 0,3:?L/10;"cm"
190 GSB @OLEDOUT
200 LED 0
210 RTN
220 @OLEDINIT
230 poke#780,#00,#40,#21,#00,#7F,#22,#00,#07,#AE,#D5,#80,#8D,#14,#20,#00,#DA,#12,#81,#CF,#D9,#F1,#DB,#40,#A4,#A6,#AF
240 forP=#788to#799:i=i2cw(60,#780,1,P,1)
250 next
260 poke #79a,#70,#b5,#40,#18,#07,#23,#1b,#02
270 poke #7a2,#c9,#18,#10,#24,#03,#78,#db,#00
280 poke #7aa,#d3,#18,#1d,#68,#0d,#60,#5d,#68
290 poke #7b2,#4d,#60,#20,#30,#08,#31,#01,#3c
300 poke #7ba,#f4,#d1,#70,#bd
310 @OLEDOUT
320 forP=0to7:i=usr(#79A,#907-P):i=i2cw(60,#781,1,#700,128):next:rtn