Pi」の活用例を紹介する連載企画「それ、ラズパイでつくれるよ」。第9回は気圧センサーを用いて相対高度を計算し、高いところから落ちたときに受けるダメージを表示してみよう。シューティングゲームなどによく登場する、一定の高さ以上から飛び降りたときにプレイヤーが受けるダメージのことだ。私は友人たちと一緒に住んでいるのだが、そのうちの一人が「Fortnite」というゲームにどハマりしている。そんな彼は毎週末リビングのテレビの前にどっしりと構え、深夜まで夢中でゲームを続けている。我が家リビングの週末の様子Fortniteにも落下ダメージが存在するのだが、そんな彼がある日ボソッと呟いているのを聞いた。「今ここから落ちたら何ダメージ食らうんだろう」なんと彼は実生活の中での落下ダメージを気にし始めてしまったのだ。そんな彼のために、ラズパイを使って今いる高さから落下したときのダメージを常に表示してあげることにした。高さを測るスマホに標準搭載されている健康管理アプリが、私が1日に登った階段の数を計算してくれている。その高さは気圧を使って計算しているそうである。4000歩ほどしか歩いていないのに16階分登っている生活を送っている。そこで今回高さを測るために気圧センサーを用いることとした。オムロン製のMEMS絶対圧センサー「2SMPB-02E」を搭載して、ラズパイとの配線の面倒がないGroveのコネクターが付いた「絶対圧センサ評価モジュール」を使用する。高さが分かれば落下ダメージの計算である。Fortniteでは大体高さ15m辺りから落下ダメージを受ける。15mというとビル4階くらいの高さになる。私は3階から飛び降りて無事でいられる気がしないが、落下ダメージはFortniteとほぼ同じになるように計算した。ラズパイの準備ハードウェアは以下のものを用意する。気圧センサ過去に作ったノートPCが活躍します。raspi-configで設定しておく。Pi+の初期設定はターミナルで以下のコマンドを実行し、再起動すれば完了だ。Pi+を取り付け、センサーをI2Cと書かれたコネクターにつなぐ。I2Cと書かれたコネクターならどこでも良い。全て取り付けたところ。1を実行して、「04」と「56」が表示されることを確認しておこう。Pi+、「56」が気圧センサーにあたる。次に体力ゲージを表示するために、普通は処理の進行状況を明示するために使うプログレスバーをターミナルに表示させるPythonライブラリをインストールする。light-progress最後に気圧センサーのPythonライブラリをダウンロードして準備完了だ。https://github.com/omron-devhub/2smpb02e-grove-raspberrypi.gitPythonスクリプトで動作させる以下のようにpythonスクリプトを作成し、動作させる。Pgroundは地面の高さでの気圧なので、測りたい場所の1階などでサンプルプログラムを動作させて事前に変更しておく。作成したスクリプトはダウンロードした気圧センサー用のライブラリと同じディレクトリに保存しよう。私はfalling.pyとして保存した。main()ターミナルから以下のコマンドで実行する。falling.pyするとターミナルに体力ゲージが1秒ごとに表示される。階段を登っていけば受ける落下ダメージがどれだけになるか直感的に分かるだろう。ダメージがない高さでの体力ゲージある程度高い位置での体力ゲージ早速同居人の元へ持っていき落下ダメージを体感してもらった。飛び降りてはいけない高さを認識できるようになり、なんだかうれしそうだ。今回は気圧センサーを用いて高さを測り、落下ダメージを計算した。落下ダメージが分かれば、一見飛び降りても平気そうな場所から飛び降りてしまうことが減るかもしれない。実生活では落下ダメージを受けないように気を付けてほしい。※このコーナーでは、みなさんの「それ、ラズパイでつくれるよ」をお待ちしています。問い合わせフォームからドシドシご応募ください。石川県の海と砂の近くで生まれ育つ。アメリカンフットボールとサーフィンをしながら、機械工学・ブレインコンピュータインターフェースを学ぶ。学業とともにものづくりを行い、様々な人と出会いながらスキルを学んでいる。株式会社メイテック~個人情報保護について~入力前に下記の「個人情報の取り扱いに関して」をお読みいただき、記載されている内容に関して同意していただく必要があります。同意していただけない場合には、弊社が提供するサービスをご利用いただけない場合があります。(同意していただけない場合には、当フォームへの入力ができません。チェックして、入力フォームの画面へ進んでください。「個人情報の保護に関する法律」、およびJISQ15001(個人情報保護マネジメントシステム要求事項)に基づき、以下の事項を公表いたします。特段の説明がない限り、本記述における個人情報には「行政手続きにおける特定の個人を識別するための番号の利用等に関する法律」が定める個人番号及び特定個人情報を含みます。個人情報の利用目的の公表について弊社は、エンジニアリングソリューション事業等の業務遂行、その他のご連絡、情報提供等のため、必要となる個人情報を利用します。弊社グループ会社より一部業務を受託し、当該受託業務の範囲内で個人情報を利用します。[個人情報(特定個人情報を除く)]特定個人情報を除く個人情報に関する利用目的は以下の通りです。下記の利用目的以外で利用する必要が生じた際は、法令で許される場合を除き、事前にご本人様の同意をいただいた上で利用します。関する業務等、グループ会社との業務委託契約書に記載された業務)[特定個人情報]特定個人情報に関する利用目的は以下の通りです。下記の目的以外での利用は、法令で許される場合を除き行いません。委託元から指定された業務に応じ、それぞれ該当する上記の利用目的により利用します。業務委託先への個人情報の預託について弊社の業務の一部を委託し、業務に必要な範囲内で個人情報を預託する場合がありますが、業務委託先については弊社の定める一定の基準にて選定します。個人情報の取り扱いに関しての契約を締結し、弊社による適切な監督を行ないます。個人情報の共同利用について以下の個人情報につきましては、弊社グループ会社との間で共同利用する場合がございます。特定個人情報につきましては共同利用いたしません。弊社グループ会社間で利用するネットワークシステム経由4.第三者への開示または提供について以下のいずれかに該当する場合を除き、個人情報を第三者に開示または提供しません。特定個人情報については、法令で明記されている場合を除き、第三者に開示または提供しません。弊社は、個人情報保護のために社内規程等を整備し、適法かつ合理的な安全対策を講じます。置き、個人情報への不正アクセス、個人情報の紛失、破壊、改ざん及び漏洩の予防等、適切な管理に努めます。6.個人情報の提供に関する任意性および当該情報を提供しなかった場合に生じる結果について本サービスの実施においてそれぞれ必要となる項目は、本サービスの個人情報の登録画面において「必須項目」として記述されています。この項目を入力いただかない場合は、弊社が提供するサービスをご利用いただけません。項目については「任意項目」でございますが、この項目を入力いただかない場合は、円滑な連絡が行えなくなる場合がございます。個人情報に関するお問い合わせ窓口について個人情報に関する苦情、相談については、下記の窓口にご連絡ください。<http://www.meitec-kenpo.jp/>へご連絡ください。きについて弊社保有の個人情報に関する利用目的の通知、開示、内容の訂正、追加又は削除、利用の停止、消去及び第三者への提供の停止(開示等という)のご請求等があった場合、適切かつ遅延なく対処いたします。ご請求にあたり、弊社所定の書式に定められた項目を全てご記入いただき、ご本人様であることを確認できる書類とともに前項の窓口にご提出してください。※<http://www.meitec.co.jp/company/social_responsibillity/ct4m9s0000004065-att/pri00103.pdf>からダウンロードしてください。※弊社窓口からのお取り寄せも可能です。・ご本人様確認書類パスポートや運転免許証等の公的機関発行の顔写真付き身分証明書の写し(有効期間内のもの)※ご本人様が未成年である等、代理人様がお手続きされる場合は、委任状が必要です。※開示等のご依頼により取得した個人情報について開示等のご依頼によって取得した個人情報は、ご依頼への対応に必要な範囲のみで取り扱います。ご提出いただいた書類は、対応終了後3年間保有しその後廃棄させていただきます。依頼書に記載された住所あてに、書面にてご回答申しあげます。下記の場合は不開示とさせていただきます。その場合、不開示理由を付記して通知いたします。・他の法令に違反することになる場合<改訂について>より良くお客様の個人情報の保護を図るために、また法令その他の規範の変更に対応するために、当公表事項の内容の一部を改訂することがあります。お客様には、当該窓口をご利用の前に、都度当ページをご確認されることをお勧めいたします。#SendaiMMF次世代フレキ基板で巨象を動かすエレファンテック——ポスト・メイカームーブメントは始まっている当たり前に存在するパッケージ。その可能性はどこまで広がるか——「なんか、ちがう。