.tsの行頭に以下のコメントを書きます。することでコンパイル時にespruino.d.ts中のアンビエント宣言が参照されるようになります。espruino.d.tsは今のところすべてのオブジェクトを定義できていません。いうかすごく単純なことしか定義できてないです。anyだらけでゆるゆるです。Typedを参考にしながら手探りで書いてます。Espruino独自のオブジェクトの型が定義されることで存在しないプロパティを参照したりする危険性が少なくなるのでいいかもしれません。必要なところからぼちぼちアップデートしていこうと思います。考えたらこの記事はEspruinoっていうかTypeScriptの記事だった気がしますが気にしないことにします。先日、ハード系のハッカソンに参加したら圧力センサーを使ってるチームがいて圧力おもしろいなと思ったので買ってみました。値段も手頃だし壊れにくそうなので電子回路の勉強には使いやすいかなと思います。圧力センサーをつなげてみようと思います。とりあれずセンサーに圧力をかけたらLEDが光るみたいなarduinoとかでよくあるデモをつくってみようと思います。圧力センサーは与えられた圧力に応じて抵抗が変化するのでespruinoで回路の電圧の変化を読み取ります。そのために抵抗分圧回路というのをつくります。回路はこんな感じになります。espruinoのGNDに接続します。espruinoのA8ピンに接続します。JavaScriptはこんな感じ。IDEでプログラムを転送するとこんな感じで動きます。analogRead(A0)で取得した値が0.5以下になるとLEDが点灯する仕組みです。vbat(赤ケーブル)からくる電圧に10kオームの抵抗をかませます。その後にA0ピン(緑ケーブル)を挿しその後に圧力センサの片方のピンを接続、圧力センサのもう片方のピンをGNDに落とします。することで圧力センサをつまんだときに変化する抵抗で回路の電圧が変化しA0ピンでその電圧の変化を計測できます。いうのを抵抗分圧回路というらしいです。秋月のページによるとFSR402圧力センサーは力いっぱいつまんで10kオームということなので前に10kオームかませることで力いっぱいつまむと約5V、半分くらいだと約2.5V、何もしないと約0V。おおざっぱにいうとそんなかんじで電圧が変化します。温度計や圧力センサーなんかは単純な回路でアナログ値が取得できます。単純なんだけどやってみると意外に面白くて初歩的な回路の勉強にもなります。arduinoとかのチュートリアルでよくやられる理由がわかります。Espruinoには各種センサー向けのビルトインライブラリが豊富に用意されていてチュートリアルも充実していますが、個人的にはanalogReadみたいな基本的な機能を使いこなすのもおもしろくなってきた今日このごろです。なんとなく人感センサーが好きです。焦電素子で生き物の動きを検知。自動ドアとかで使われているやつです。回路も単純でいかにもセンサー使ったっぽくなるので電気回路初心者のボクでも動かしやすいわけで、今回はEspruinoで人感センサーを使って動きを検知してみます。Exampleそのまんまです。人感センサーもここに載ってるのと同じやつを使います。HC-SR501配線はこんな感じまず黒いワイヤをEspruinoのGNDピンに挿します。次に赤いワイヤをBatピン、緑のワイヤをA1ピンに挿します。黒いワイヤを人感センサーの左端のピン(GND)に、緑のワイヤを真ん中のピン(OUT)、赤いワイヤを右端のピン(VCC)に挿します。これで配線は完了です。Javascriptのソースコードは以下です。setWatch()関数を使って焦電センサーの状態を監視します。動きが検知されるとsetWatch内のコールバックが呼ばれLED2(緑LED)が点灯する仕組みです。setTimeoutで3秒後にLED2を消灯します。みたいな動きをする関数ですが、オプションで監視の繰り返しや監視する電圧状態の指定、監視間隔が指定できるのでセンサーの監視に特化してるみたいです。玄関に人が来たらアラームがなるやつとか、Espruinoで普通に作れそうでおもしろいです。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。