はげたまぼっち

実験室長(はげたまぼっち)の経歴:電子機器製品の評価試験や検査業務に約10年間従事しました。東京タワーと同級生の1958年生れです。

マイコンを使って、センサーやモーターの制御、機器間の通信方法などを、一歩ずつ段階的に実習しています。

C/C++

Raspberry Pi 5とC/C++でRaspberry Pi Pico Wの開発を始めよう。

「Raspberry Pi Pico WH(以下 Raspbery Pi PicoW)」は、基本ソフト(OS)をインストールして使う「Raspberry Pi 5(以下 Raspberry Pi5)」のようなコンピュータではありませんが、Raspberry Pi5と同じようにGPIOピンがあり、センサ等の電子機器の制御を行うことができます。 Rasoberry Pi5にVisual Studio Codeをインストールして、プログラミング言語、C/C++を使って、Raspbery Pi PicoWボード上 ...

実験準備

Raspberry Pi 5を使ってみよう。

この記事でわかること Raspberry Pi5のセットアップ方法 遠隔操作(SSH/VNC/SFC)の設定方法 デスクトップの設定方法 セキュリティ対策方法 ソフトウェアのアップデートとアップグレードの方法 イギリスのラズベリーパイ財団により開発さているRaspberry Pi 5 (以下 Raspberry Pi5) に、64bit版のOS(Bookworm)をインストールして、デスクトップPCとして使えるようにします。 センサー、モーターなどの入出力デバイスや、通信デバイスをRaspberry Pi ...

Lazarus

Raspberry Pi4とLazarusで始めるGUIアプリ開発

Lazarusはその主な機能である「フォーム」、「コンポーネントパレット」、「オブジェクトインスペクタ」、「ソースエディタ」を使用してアプリの開発を行っていくための統合開発(IDE)です。 ここではフォーム上にアプリをデザインする時の各要素になる部品(コンポーネント)を配置し、簡単なGUIアプリを作成していきます。 Raspberry Pi4とLazarusの準備 LazarusをインストールしたRaspberry Pi4(Bullseye:32bit OS)を使って、プログラミングを行いますので、Laz ...

Lazarus

Raspberry Pi4とLazarusでLinuxプログラミングをはじめよう。

Lazarus(ラザルス)はWindows、Linux、macosなどで動作するクロスプラットフォームの統合開発環境(IDE Integrated Development Environment)です。 統合開発環境はプログラミングをする際に必要なツール(ソフトウェア)を統合して、開発を進めていきます。 オープンソース のFree Pascal コンパイラ(FPC)向けに開発されました。 FPCはネイティブコンパイラ であるため、独立して動く実行ファイルを作成することができます。 アプリケーションの配布に ...

MicroPython

Raspberry Pi Pico W とMicroPythonで無線通信(Private LoRa)させてみよう。

プライベート LoRa 通信は、通信距離が従来の通信方式と比較して長い、LPWA(Low Power Wide Area「低消費電力広域通信」)規格の一つです。 実習では、ラズパイPicoWに接続したLoRa通信モジュール(E220-900T22S(JP))を親機と子機として2セット用意し、テキストデータを親子機器間で送受信しながら、現在時刻と電波強度(RSSI)を子機のOLEDディスプレイに表示します。 送受信の確認方法について 親機と子機の送信手順を次のように行います。 子機から親機に64バイトのテキ ...

MicroPython

Raspberry Pi Pico WとMicroPythonでWEBサーバーと並行処理をさせてみよう。

赤LEDの点滅とThonnyに時刻を表示させながら、ローカルWEBサーバーにスマホなどから要求される、緑LEDの点灯/消灯の指示、ラズパイPicoWの時刻の表示、スイッチ情報の取得を行い、プログラムの並行処理を行います。 非同期処理について 同期処理が処理を一つずつ順番に実行するのに対し、非同期処理は、一つの処理の完了を待たずに、次の処理を始めることができます。 高速で複数の処理を切り替えることで、別々の処理が同時に実行しているかのように見え、並行処理を可能にします。 ▶️同期 ...

MicroPython

Raspberry Pi Pico WとMicroPythonでWebサーバーを構築して、スマホからLEDを点灯、消灯させてみよう。

この記事でわかること クライエントへのHTML応答メッセージを作成方法 Wi-Fiを使ったネットワークへの接続方法 WEBサーバソケットの作成と接続受付開始の方法 サーバとクライアントの交信方法 ラズパイPicoW(Raspberry Pi Pico W)で ローカル Web サーバーを構築し、スマホやパソコンなどのクライアントから指示で、LEDを点灯、消灯させます。 実験準備 実験に必要な環境や部品を準備します。 機器 「ラズパイPicoWを始めよう。」記事で書きました、MicroPythonファームウ ...

MicroPython

Raspberry Pi Pico WのUART通信とMicroPythonで超音波距離センサ を使ってみよう。

この記事でわかること UART通信で制御するデバイスの接続方法 UART通信を行うための設定方法 U-100を使った距離測定の処理方法 ラズパイPicoW(Raspberry Pi Pico W)に超音波距離センサ(US-100)と液晶ディスプレイ(LCD)を接続し、UART通信を使ってLCDに超音波距離センサで測定した距離を表示させます。 UART通信については、こちらを参照してください。 実験準備 実験に必要な環境や部品を準備します。 機器とプログラム 「I2C通信で液晶ディスプレイ(LCD)に文字表 ...

MicroPython

Raspberry Pi Pico WのWi-FiとMicroPythonで標準時刻を取得、表示させてみよう。

この記事でわかること Wi-Fiを使ったネットワークへの接続方法 NTPサーバから日時取得の方法 日付・時刻データの整形方法 ラズパイPicoW(Raspberry Pi Pico W)に搭載されている2.4GHz無線LAN(Wi-Fi)を使って、 NTP(Network Time Protocol)サーバに接続し、標準時刻を取得した後、液晶ディスプレイ(LCD)に日付/時刻を表示させます。 実験準備 実験に必要な機器と部品を準備します。 機器とプログラム 「I2C通信で液晶ディスプレイ(LCD)に文字表 ...

MicroPython

Raspberry Pi Pico WのSPI通信とMicroPythonで温度センサ(ADT7310)を使ってみよう。

この記事でわかること SPI通信で制御するデバイスの接続方法 温度センサ(ADT7310)の各レジスタの設定方法 温度センサ(ADT7310)の温度計算方法 ラズパイPicoW(Raspberry Pi Pico W)に温度センサ(ADT7310)と液晶ディスプレイ(LCD)を接続し、SPI通信を使ってLCDに温度センサで測定した気温を表示させます。 SPI通信については、こちらを参照してください。 実験準備 実験に必要な環境や部品を準備します。 機器とプログラム 「I2C通信で液晶ディスプレイ(LCD) ...