Raspberry Pi Picoが2021年1月21日に発表になりましたが、Twitterなどでもかなり話題になっていますね〜。2月に入ってからはスイッチサイエンスやKSYなど国内の販売代理店にも入荷して、簡単に入手できるようになっています。

Raspberry Pi Picoの最大の特徴は、従来のRaspberry Pi OS(旧称:Raspbian)を搭載しないマイコンボードという点です。どちらかというとArduinoに近い製品ですね。サイズ的にはArduino Micro(またはNano)と競合するような製品ということになるかと思います。下の写真からも分かる通りArduino Microとは、ほぼ同サイズです。

Arduino Micro とRaspberry Pi Pico の比較

後発のRaspberry Pi Picoのアドバンテージは税込価格が500円程度という価格にあるかと思います。Arduino Microは税込で2000円代後半なので、1/5程度の安さなのです!ご存知かとは思いますが、Arduinoには価格がかなり安い互換ボードがたくさん出回っているので、真のライバルはArduinoの互換ボードになるかもしれませんね。

というわけで、これまでのラズパイ・ファミリーとは一線を画すこの小さなマイコンボードですが、どのように開発環境を構築すればいいのでしょうか?今回は「Raspberry Pi Picoの使い方」と題して、電子工作初心者の人向けに、はんだ付けのコツやMicro Pythonの開発環境をどのように構築するか解説してみたいと思います。

スポンサーリンク




目次

  1. Raspberry Pi Picoの入手方法と必要な道具
  2. ピンヘッダをはんだ付けしてみよう!
  3. Thonny Python IDEのインストール方法と使い方
  4. VS CodeでもPicoが使える!
  5. まとめ

1. Raspberry Pi Picoの入手方法と必要な道具

まずはRaspberry Pi Picoの入手について。国内の販売代理店から入手可能です。

また海外のショップから買うのもありかと思います。国内ではなかなか手に入らないアイテムも多数取り揃えられているPIMORONIがオススメです。自分はPIMORONIで購入しましたが、国内販売代理点よりも数日早く入手できましたよ。

送料はPico本体 + α程度なら£5(約715円)で、国際郵便(クッション付封筒)で送られてきます。概ね10日前後で到着します。ちなみに、これまで10回以上利用していますが一度も不着などの事故にはあっていません。

何度も買うお得意様には割引が適用されるようで、今回も£3.6のところ、£3で購入できました!単品購入の場合は送料の点で確かに不利ですが、国内では手に入らないパーツも一緒に購入すれば、決して損はないと思いますよ。

2. ピンヘッダをはんだ付けしてみよう!

入手後にまずすべきなのは、ピンヘッダのはんだ付けです。初心者の方の中には、はんだ付けは難しそうと思われる方もいるかもしれませんが、慣れてしまえば難しいものではありません。

半田ごては安いもので全く問題ないと思います。ただ、こて先は細いものに変えておくとよいと思います。またはんだのフラックス(ヤニ)は弱活性化ロジンを使用した電子基板用のものを使うと綺麗にはんだ付けできます。

半田ゴテ プレスト 高密度集積基板用はんだ セット

また、ピンヘッダに関してですが、Raspberry Pi Picoは片側20ピンなので、1列40ピンの一般的なピンヘッダを買えば、ちょうど半分の位置でニッパーで切断し、両サイドにはんだ付けできます。

KKHMF 20個 2.54mm 40-Pin DIY単一列端子ピンヘッダー

※上記のリンクはamazonへのリンクとなっています。

3. Thonny Python IDEのインストール方法と使い方

Raspberry Pi Picoを入手して、ピンヘッダを装着したら、次はいよいよ開発環境を整えていきます。Raspberry Pi Picoで開発する場合C/C++でも開発できますが、ここではMicro Pythonを使うことを前提に話を進めていきます。

Thonny Python IDEのインストール

開発環境に特にこだわりがなければ、初心者向けのThonny Python IDEと呼ばれる開発環境を使ってみましょう。
https://thonny.org/

この記事はMacユーザーを対象としていますが、WindowsやLinux(ラズパイ含む)でも開発ができます。必要な環境のインストーラーをダウンロードしましょう。

インストール後の初回の起動時に「Language」と「Initial settings」を聞かれます。それぞれ好みの設定にしてください。「Initial settings」で「Standard」と「Raspberry Pi」を選べますが、「Raspberry Pi」はボタンがかなり大きいので、もしかすると子供向けのUIということなのかもしれません。

パソコンとUSBで接続する手順

Thonny Python IDEのインストールが完了したら、パソコンとUSBケーブルで接続します。ただ差し込んだだけでは何も起きませんが、基盤上の「BOOTSEL」と表示のある白いボタンを押しながら、USBケーブルを差し込むと「RPI-RP2」というUSBメモリのようなマスストレージ(大容量記憶装置)として認識します。

そのウィンドウ内に「INDEX.HTM」というファイルがあるのでクリックしてみてください。するとオフィシャルのサイトにリダイレクトされます。
https://www.raspberrypi.org/documentation/pico/getting-started/

開いたページをスクロールすると下記のような三つのタブが見えてきます。真ん中のタブ「Getting started」をクリックして、ファームフェアをダウンロードしてください。

ファームウェアは「Download UF2 file」という黄緑色のボタンをクリックするとダウンロードできます。

pico_micropython_*.uf2」をダウンロードできたら、ファームフェアの書き込みを行いますが、やり方は簡単です。さきほど開いた「RPI-RP2」にドラッグ&ドロップします。書き込みが完了すると下記のようなエラーが表示されます。

通常これはエラーとして認識すべきものですが、ここでは問題視せず無視してください。これが正しい方法です。ちなみに、このファームウェアの書き込みは接続のたびに必要となります。

Thonny Python IDEの使い方

ファームウェアの書き込みが完了したら、先ほどインストールしたThonny Python IDEを起動してみましょう。

ツールバーコードタブ、インタプリタを使えるShellタブが並んでいます。ひとまず下側のShellタブを使いインタプリタできちんと動作するか試してみましょう。

インタプリタでの使い方

print("Hello, World!")

このように記述してReturn(Enter)キーを押して「Hello, World!」と出力されたらOKです。

Micro Pythonでコードを書いてみよう

ここまでできたら、最初のLチカを試してみましょう!今度は上側のコードを書くタブ内に実際にコードを書いてみましょう。

import machine
import utime
led = machine.Pin(25, machine.Pin.OUT)
while True:
	led.value(1)
	utime.sleep(2)
	led.value(0)
	utime.sleep(2)

ここでは基盤上にある緑色のLEDを単純に2秒点灯、2秒消灯を繰り返すコードになっています。

このように書けたら、ツールバーの「実行」ボタンを押してみてください。

保存先を聞かれますので、Raspberry Pi Picoを選んでください。

ファイル名は何でもいいですが「blinking_led.py」などとしておきます。保存の完了後に…

このように2秒ごとに点滅すれば成功です!停止するには「停止」ボタンをクリックします。

4. VS CodeでもPicoが使える!

これまで解説してきたようにThonny Python IDEでも開発できますが、使い慣れたエディタがあるなら、そちらで開発したいですよね?

というわけで、ここでは多くのプログラマーが愛用しているVS Codeでの開発方法も紹介します。

まず「表示」の「機能拡張」を開き「Pico-Go」を検索してインストールします。下記URLからでもインストール可能です。
https://marketplace.visualstudio.com/items?itemName=ChrisWood.pico-go

この機能拡張を使うにはPythonNode.jsが必要です。Macの場合、Pythonは標準でインストールされていますが、Node.jsがインストールされていない人はインストールしてください。

Node.js ダウンロード
https://nodejs.org/ja/download/

プログラムの実行方法

インタプリタでの実行については、「ターミナル」を開き「Pico Console」を選択することで可能になります。「help()」を入力すると、下記のような説明が表示されますので、一度参照してみてください。

Welcome to MicroPython!

For online help please visit https://micropython.org/help/.

For access to the hardware use the 'machine' module.  RP2 specific commands
are in the 'rp2' module.

Quick overview of some objects:
  machine.Pin(pin) -- get a pin, eg machine.Pin(0)
  machine.Pin(pin, m, [p]) -- get a pin and configure it for IO mode m, pull mode p
    methods: init(..), value([v]), high(), low(), irq(handler)
  machine.ADC(pin) -- make an analog object from a pin
    methods: read_u16()
  machine.PWM(pin) -- make a PWM object from a pin
    methods: deinit(), freq([f]), duty_u16([d]), duty_ns([d])
  machine.I2C(id) -- create an I2C object (id=0,1)
    methods: readfrom(addr, buf, stop=True), writeto(addr, buf, stop=True)
             readfrom_mem(addr, memaddr, arg), writeto_mem(addr, memaddr, arg)
  machine.SPI(id, baudrate=1000000) -- create an SPI object (id=0,1)
    methods: read(nbytes, write=0x00), write(buf), write_readinto(wr_buf, rd_buf)
  machine.Timer(freq, callback) -- create a software timer object
    eg: machine.Timer(freq=1, callback=lambda t:print(t))

Pins are numbered 0-29, and 26-29 have ADC capabilities
Pin IO modes are: Pin.IN, Pin.OUT, Pin.ALT
Pin pull modes are: Pin.PULL_UP, Pin.PULL_DOWN

Useful control commands:
  CTRL-C -- interrupt a running program
  CTRL-D -- on a blank line, do a soft reset of the board
  CTRL-E -- on a blank line, enter paste mode

For further help on a specific object, type help(obj)
For a list of available modules, type help('modules')

書いたコードの実行方法ですが、ウィンドウ右上の「緑の三角形のボタン」ではなく、「…(三点リーダー)」から「Pico-Go > Run current file」を選択することで実行されます。また、実行中のプログラムの停止については、ヘルプの説明にもあったように「Ctrl + C」です。

5. まとめ

今回は発売されて間もない話題のRaspberry Pi Picoの使い方を解説してみました。従来のRaspberry Pi OSを搭載しないマイコンボードとして新しいファミリーが増えたラズパイですが、Arduinoと競合するPicoの今後から目が離せませんね!

新しいデバイスが発売されると何を組もうかワクワクするものですが、あなたならPicoを使って何を組みますか?