2025年7月25日金曜日

本棚に入るドールハウスを作ってみる〜準備から作り始めた手応え

以前から、「箱庭的な世界観」には強い魅力を感じていて、それこそ「ジオラマ」は大好物な部類に入ります。しかしながら、作ったところで飾るところもないし、大好きな城のプラモデルすら組み立てられずに「大切に保管」されている有り様。作っても邪魔な大きさにならず、それでいて作り上げた満足感と出来上がったあとの実用性を兼ね備えたようなものがあればと思っていたところ、ドンピシャなものを見つけてしまいました。「Book Nook(ブックヌック)」というらしいのですが、「本棚に入るドールハウス」として一部で話題になっていたようで、Amazonで見つけて衝動買いをしてしまいました。
#「Book Nook」が一般名詞なのか商品名なのかはイマイチよくわかっていません。

これを見たとき、直感的に「フィジカル・コンピューティングに使えるのではないか。」と思いました。この本棚ドールハウスにはLEDを仕込むことができて、本棚に入れて暗くなっても中を見ることができます。ということは、Raspberry Pi Pico系のものやArduino系、micro:bitなどのマイコンボードを仕込めばもっといろいろな表現ができるのではないか、音を鳴らしてみたり、中の物を動かしてみたりと、フィジカル・コンピューティングを含む電子工作の素材や改造ベースとして使えるのではないかと思ったのでした。

とは言え、初めてのチャレンジでもあり、写真や文章だけでは情報が足りず、実物で確かめてみようと考えてAmazonでセールをしていたものをいくつか購入してみました。そのうちの1つで一番シンプルそうなもの(「Bakery Shop」風のもの)を選んで作る準備を始めました。今回購入したものは中国製で、中国から日本の代理店のようなところが輸入して販売しているようです。日本語の案内書のようなものは付属していましたが、肝心の説明書は全て中国語表記だったので、写真を見ながら想像力を働かせてどうにか組み立て作業を進めることにしました。

まずは道具の用意から。細かな作業をするためにピンセットやデザインナイフ、スチール定規、ハサミ、工作マット、木工用ボンドなどの道具を用意していきました。

シンプルとは言え、やはり小さなものを組み立てていくので、精度にはそれなりにこだわらないといけないと思います。よく考えたら、自宅にあるハサミは精密な作業に向いているものがなく、紙工作用のハサミを購入するところから始めました。今回購入したのは長谷川刃物のRMF-170KとDSB-100です。

さて、準備ができたので作業を開始します。説明書に従って、手始めにデクスチャーシートを木製(MDF材を含む)に貼り付けます。セメダイン社の木工用速乾ボンドを使用しました。スポンジ刷毛を使って(少々の水分を含ませて)木材側にボンドを薄く塗ってテクスチャーシートを貼り、おもしを乗せて圧をかけて接着します。テクスチャーシートとのズレは0.2~0.3mm程度でしたが、組み立てる前にハサミで切った方が良さそうでした。

次に、細かな部品の中で、フェルト生地を使って部品を作る作業をやってみました。説明書には、型紙を使ってフェルトを切り取り、別に切り取ったテクスチャーを貼り付けるような手順が書かれていました。そこで、私が考えた手順は以下の通りです。

  1. 型紙に両面テープを貼り付けて、フェルト生地に仮付けする。(「はがせる両面テープ」を使用)
  2. 型紙に沿ってフェルト生地を切り取る。
  3. 型紙をはがしてフェルト生地にテクスチャーをボンドで貼り付ける。(工作マットで上下から挟んでおもしを乗せて圧着する)

はがせる両面テープでも長時間放置するとはがれにくくなるので、切り取った後は、貼り付けた型紙をできるだけ早くはがした方がよいと思います。

実は、はじめからテクスチャーを貼り付けて切る方法でもやってみたのですが、型紙よりもテクスチャーの方が余白が広く、その分フェルト生地を多く消費してしまうという問題がありました。試しに、いくつかの部品を型紙を使わずにやってみました。やってみて思いましたが、テクスチャーの紙は型紙の紙より硬いので、フェルトに貼り付けた状態だと切りにくいという問題があるのかもしれません。

この後も様々な部品を作っていきましたが、説明書のとおりに作っていくだけなので取り立てて難しいことはなく、ひたすら地味な作業をこつこつと行っていく感じです。正直なところ、完成図を見てちょっと変更したいところもあるので、どのあたりから改造を始めるか(一度全て完成させてからとか、飾りつけを省いて大枠を作ってしまってからとか…)考え中です。続きは後日ということにします。

2025年7月18日金曜日

FAMIC on USBという音楽系ガジェット(小さなマイコンボード)を試してみる

電子工作をやっている方にはおなじみかもしれませんが、マルツ(マルツエレック株式会社)のオンラインショップ(←店舗の方にもよく行きました)で、「FAMIC on USB」というMML(Music Macro Language)でプログラムできる音楽系ガジェット(小さなマイコンボード)の取り扱いが始まったとの情報があり、使いそびれていたポイントが少し残っていたのもあって迷わず購入してしまいました。今回購入したのは、FAMIC on USB本体とデータを記録させるためのFAMIC WRITERがセットになっているもので、PRIORISという会社が開発したもののようです。

MMLについては、数年前にも当Blogで紹介したことがありました。IchigoJamを楽器のようにするプログラムを作って、キーボードで演奏したときに使ったのがMMLでした。今回は、FAMIC on USBを動かすための「(FAMIC on USB)MML Playground」を使って、ブラウザー(「Google chrome」を使用)からFAMIC on USBを操作します。MMLがよくわからなくても「MML Command Reference」が使えるので、あてにならない自分の記憶とネットの情報を探しながら使ってみることにしました。そもそも、MMLについては公式な規格が存在しないようで、MMLで動かせることを謳っていても、実装具合が微妙に違うことがあるようです。かっちりした規格があった方が安心してプログラムを作れると思う反面、ゆるさも魅力の一つではある(何なら自分でもいろいろなものに実装可能だということにもなるので)かなとも思います。

さて、本題に戻ります。FAMIC on USBに電池駆動のアンプ内蔵ステレオスピーカー(YAZAWAのTVR35WH)をつないで音出し実験をしてみたいと思います。chromeブラウザーを動かすのは、愛用のMacBook Proです。公式サイトには、Linuxにも対応しているようなことが書かれていましたので、自作PCのLinux Mintからでも制御できると思います。PCなどと接続するためのUSBケーブルは付属していませんでしたが、FAMIC on USB側のUSBコネクタの形状は、USB-Cで接続できる形状になっています。自宅にはUSB-A←→USB-Cケーブルがいくつかありますが、電源供給用のものやUSB2.0までしか対応していないものなどもあって、どのケーブルなら使えるかわかりませんでした。とりあえず、USB3.0対応のUSBケーブルを使うことにして、動作確認をやってみることにしました。

今回は、FAMIC WRITERも同時に購入しているので、こちらも載せて一緒に動作確認していきたいと思います。ガイドとしてオフィシャルWebサイトで紹介されているYouTubeの動画を参考にしながら作業を進めていきました。プログラムを始める前に、FAMIC on USBにFAMIC WRITERを載せます。ピンを曲げないように気をつけて、しっかりと奥まで挿し込みました。次に、先ほど紹介したアンプ内蔵スピーカーを接続して電源をONにしておきます。あとはMacBook ProとUSBケーブルで接続すれば聞き覚えのある音(名前から想像して…)が鳴って接続されたことがわかりました。

接続した状態からchromeブラウザーを開いて、「MML Playground」にアクセスします。「Ch. 1」のところに「CDEFGAB>C」と入力して、ウィンドウの下方にある「▷(再生)」ボタンをクリックします。すると、MacBook Proにつないでいるスピーカーから音が出ました。ここで、音声出力の設定を「FAMIC WRITER」に切り替えます。(この後は、MML PlaygroundでプログラムしてFAMIC on USBに書き込んだもの以外の音を出すことはできないので要注意です)ウィンドウの上方にある「FAMIC WRITE」ボタンをクリックすると、この設定がFAMIC on USBに書き込まれて、その後は電源さえあれば設定された通りの曲が流れるようになります。

プログラムした曲を別のファイルで保存しておきたい場合は、「Download」ボタンをクリックするとjsonファイルで保存することができます。これは、「Upload」ボタンをクリックして読み込むことも可能です。また、「Examples」ボタンをクリックすると、いくつかのサンプルプログラムが選べるようになっていて、MMLの書き方を学ぶこともできるようになっています。FAMIC on USBを持っていななくてもMML Playgroundでプログラムすることはできる(その場合は、PCなどのスピーカーからも音が出せる)ので、作り込んで鳴り方を確認することができます。

活用のアイデアとしては、この環境で音楽を作ってFAMIC on USBに流し込んだら、電源とアンプ−スピーカーだけで音が出るので、「呼び込みくん」のようなものをオリジナルで作ることもできます。他のマイコンボードとも組み合わせると、更に活用の幅が広がるのではないかとも思いました。

2025年7月12日土曜日

カブトムシ飼育環境を転用してミニトマトを育ててみる

このBlogで長い間紹介してきたカブトムシ飼育でしたが、最後の報告が約2年ほど前で、去年の秋には最後の1頭が亡くなっておしまいになっていました。残ったのは、クヌギマットと腐葉土。これを何かに使えないかと思ったまま約1年が経とうとしています。そんな中、家庭菜園的なものをやってみてはどうかと思いたち、道具の準備を始めました。

もともと、「野菜のベランダ栽培」もこのBlogで紹介していた通り、職場のベランダで野菜の栽培をしていました。(趣味ではなく、「食農教育」の一環としてですよ。念の為)このときは、土を使って栽培をしていましたが、今手元にあるのはクヌギマットと腐葉土だけ。近所のホームセンターであれこれ考えながら、この環境で育てられそうなものとして選んだのが「ミニトマト」でした。

KAGOMEが製造している、「トマトの土」があって、この主成分が「ヤシガラ」と言われるものだったので、「ヤシガラでできるならクヌギでもできるんじゃない?」と思ったのでした。(深い根拠はありません)とは言え、本当にうまくできるかわからなかったので、(弱気にも)このトマトの土も購入して、一緒に使ってみることにしました。

寄せ植えができるくらいの広めの植木鉢とスタンドを用意して、その中にクヌギマットと腐葉土、そしてトマトの土を混ぜた栽培土を作り、その中にミニトマトの苗を3株植えました。ベランダ栽培の大きな問題は、ベランダ床の熱さです。特に夏場のベランダ床は熱くなりやすく、植物が熱にやられないように工夫する必要があります。そのため、植木鉢をスタンドに載せて、ベランダ床の熱が直接伝わらないようにしました。

植えたあとにしっかり水やりをして(雨も降ったけれど)、1日経ったら結構しっかりと根が張ってきた感じでした。これがうまくいくようなら、このクヌギ&腐葉土をベースにして別の野菜栽培にも挑戦していきたいと思っています。野菜ごとに必要な培養土の条件が微妙に違ったり、同じ土で連作しない方が良かったり、寄せ植えに向いていない組み合わせがあったりして考えなければならないことはたくさんあるのですが、それも含めて楽しみながらやっていきたいと思っています。

2025年7月5日土曜日

Pd(Pure data)でシンセサイザープログラミング~部品について整理してみる

前回の続きです。Pd(Pure data)という音楽に特化したプログラミング環境を使ってシンセサイザーを作っているのですが、なかなかクセの強いソフトなので一度整理しておきたいと思います。Pdでプログラミングをする際に最もよく使われるのが「配置」メニュー内の部品たち。この部品たちの役割がわかってくるとPdのプログラミングがスムーズになっていくと思います。そんな訳で、この部品たちの役割などについて整理していきたいと思います。
#今回は、Pure Data Japanの「オブジェクトの種類」を参考にしてまとめました。

オブジェクト
オブジェクト名(※)を入力し、様々な機能を実現する部品。
メッセージ
数値データや文字列データなど、出力するものを入れておく部品。
ナンバー
数値データを入れておく部品。実行モードでは、マウス操作で数値を変更できる。
シンボル
文字列データを入れておく部品。
コメント
コメントを入力しておく部品。日本語的には、「メモ」と言った方がわかりやすいかもしれない。
Bang(バン)
クリックでスイッチONのデータを出力する。モーメンタリースイッチのような挙動。
Toggle(トグル)
クリックでスイッチON/OFFのデータを出力する。オルタネートスイッチのような挙動。
ナンバー2
「ナンバー」部品と似ているが、プロパティの設定項目が違うので、扱える数値の幅が広い感じ。
垂直スライダ
スライダスイッチ(垂直方向)。「ナンバー」部品などの数値を操作的に変化させることができる部品。
水平スライダ
スライダスイッチ(水平方向)。挙動は「垂直スライダ」部品と同じ。
垂直ラジオボタン
ラジオボタン(垂直方向)で値を変更するスイッチ。プロパティでボタンの個数や挙動を変更できる。
水平ラジオボタン
ラジオボタン(水平方向)。挙動は「垂直ラジオボタン」部品と同じ。
VUメータ
見た目通りの「VUメータ」部品。
キャンバス
プロパティを見るとグラフ表示ができそうな部品であることがわかる。詳細はわからず…。

※_noteで見つけた「puredataのオブジェクト一覧」やこじ研(小嶋研究室)さんの「Pure Data小辞典」には、さらに細かいコマンドなどの情報がありました。モジュラーシンセのように様々なモジュールを作って、それをつないで本格的なシンセサイザーを作ることができたら面白いと思いました。それに、外部からMIDIキーボードなどでコントロールするところまでできたらやってみたいと思います。

「Pd(Pure data)でシンセサイザープログラミング」

2025年6月21日土曜日

Pd(Pure data)でシンセサイザープログラミング~シンセサイザーっぽいものを作ってみる

前回の続きです。Pd(Pure data)という音楽に特化したプログラミング環境を使ってシンセサイザーのようなものを作ってみたいと思います。前回同様、今回もレシピ本「Pd Recipe Book」を参考にしています。前回は、サイン波の音を出すプログラムを作ってみましたが、モジュラーシンセサイザーをいじっているような感覚でプログラムすることがわかってきました。モジュラー自体も(お金をかけずに)簡単に作ることができるため、夢のようなプログラミング環境ではあるのですが…。(万人向けではないことだけは確かでしょうね。(^^;;;)

前回作ったサイン波を出すプログラムを拡張して、「osc~」から出てくるサイン波を加工することを目指します。「Pd Recipe Book」で紹介されていたものを再現していきながら、配置された部品の意味や役割を確認しながら作業を行いました。作業としては、部品を選んで配置して、部品の中に文字列や数値を入力して役割を決めて、機能するように線でつなぐといった手順になります。部品の種類や中に入力した内容によって、つなげられるものとつなげられないものがあるようで、部品にマウスを近づけて「○」が表示されると線を引き出す(ドラッグ)ことができて、同じく「○」が表示されるところ離す(ドロップ)と線でつながります。とは言え、つなげられるから意味のあるつながり方になっているかと思いきやそんな単純な話ではなく、モジュラーシンセサイザーでも同じですが、思ったように音を変化させることができないつなぎ方もできてしまうところがあります。

そんな感じでなかなか一筋縄ではいかないところがあるものの、攻略する面白さ(これを面白いと思える人にとっての…)はのめり込ませるだけの魅力が十分にあると思いました。ということで、レシピ本を参考にして作ってみました。

動かし方が独特なので、はじめはどうすれば音が出るのか戸惑うかもしれません。「Pitch」とラベリング(任意なので名前は何でもよい)した「ナンバー」部品をクリックして、画面上側にドラッグしていくと数値が上がっていきます。それに伴って、音が出ます。直接数値を入力して、Enterキーを押しても音が出ます。マウスを操作している間は、音が変化しながら鳴り続けますが、マウスを止めたりEnterを押して音を出したりした場合は、一定時間で音が止まります。「*~」につながっている「ナンバー」部品は、音が出ている状態と止まっている状態を表しています。音を鳴らし始めると自動的に「1」になり、しばらくすると「0」に戻ります。(リレーのような動きをします)他の「ナンバー」部品の数値を変更した場合も、「Pitch」をクリックしてしてからでないと音が出ません。このあたりの「暗黙のルール」がもう少しわかりやすいとユーザーが増える気がしますが…。

ということで、少しずつ部品の役割(挙動)がわかってきました。「ナンバー」部品は、編集モードをやめて実行モードにしても数値を変更することが可能です。(「オブジェクト」部品の中に入力した数値は、編集モードでなければ変更することはできません)つなぎ方によっては、他の数値の変更と連動して自動的に「ナンバー」部品の数値が変わることもあります。今回のシンセサイザーっぽいプログラムでは使いませんでしたが、「リスト」部品も数値などを格納することができると思われるので、もう少し詳しく調べてみたいと思っています。

「ナンバー」部品の数値を変更する方法として、マウスを使って上下にドラッグする以外に、「垂直スライダ」部品や「水平スライダ」部品を使って、スライダの出力側と「Pitch」の「ナンバー」部品の入力側をつなぐと、スライダを動かすことで数値を変更できることがわかりました。少しだけシンセサイザーを操作している感じに近くなってきました。この場合、スライダのバー(「つまみ」のようなところ)をクリックすると音が出ます。このスライダのバーを「垂直…」なら上下に、「水平…」なら左右にマウスで移動すると音が変化します。これは絶対沼るやつです。

「Pd(Pure data)でシンセサイザープログラミング」

2025年6月14日土曜日

Pd(Pure data)でシンセサイザープログラミング~はじめの一歩

だいぶ以前から気になっていたのですが、Pd(Pure data)という音楽に特化したプログラミング環境があります。ブロックプログラミングとテキストプログラミングとの中間な感じのプログラミング方式が採用されていて、一見すると色気もなくて何をどうすればよいかよくわからないと思われてしまいそうなのですが、使ってみると楽器そのものを組立てているような面白さにハマる人が多いようで、意を決してそんな世界に足を踏み入れてみることにしました。

とは言え、MacBook ProにPd-extended(すでに開発終了)をインストールしたのは記憶にないくらい前のこと。興味をもったままPd-extendedをインストールして、ほぼ何もしないまま放置して、しばらくしてまた思い出して、レシピ本「Pd Recipe Book」を購入してまたしばらく放置して…を繰り返していたので、お気付きの通り何も進んでいませんでした。

まずは自分の情報をアップデートするところから始めます。そもそもPdの開発は、Pure data (Pd) Vanillaと、それにライブラリなどをパッケージしたPd-extendedとで別々に開発・メンテナンスされていたようなのですが、現在は、もともとのPd Vanillaに統合されているようです。今回は、Pdのダウンロードサイトから最新版をダウンロードしてインストール作業(展開して出てきたアプリをアプリケーションフォルダにコピー)をするところから始めました。

Pdを起動すると、ログ窓が表示されます。作業を進めていくと、このログ窓にPdの動作ログなどが表示されます。

「ログ」の後ろの数字は、表示する内容がどの設定なのかを表す番号になっていて、「2」は「通常」のログ表示ということのようです。すべてのログを見たい場合には、「4」にします。表示する文字数の節約という意味では意図はわからなくもないのですが、ユーザーフレンドリーであるかどうかという点では微妙な感じがします。このあとの作業でも感じたことですが、使いながら意味を考えたり、本やWebサイトで調べて「省略されている文字」の意味を理解したりしながら作業することが多くて、「一見さんお断り」な雰囲気を感じてしまいます。
#音楽(音)や電子楽器の知識はあった方が良いかもしれません。

気を取り直して作業を進めていきます。今回は、先ほど紹介した「Pd Recipe Book」以外にも、「Pure Dataについて調べてみた」を参考にして作業を進めます。Pdの「ファイル」メニューから「新規」(⌘N)をクリックしてキャンバス窓を開きます。ここに様々な部品を「配置」メニューから選んで配置していきます。部品には、文字列や数値を入力できるものやマウスで操作するものなどがあります。新しくキャンバス窓を開くと「編集モード」になっているので、そのまま「配置」メニューから部品を選択してキャンバス窓に置くことができます。プログラムの動作確認をするときには、「編集」メニューから「編集モード」(⌘E)のチェックを外して実行モードで動作させます。(簡単なものであれば「編集モード」のままでも確認できることはあります)さらに部品を追加したい場合は、そのまま「配置」メニューから部品を選ぶとキャンバス窓が「編集モード」に変わってくれます。
#ログ窓とキャンバス窓は、どれか一つしか選べない仕様になっているため、その窓がアクティブか非アクティブかによって使えるメニューの内容が変わります。

つまずきどころは、部品に入力する文字が「小文字縛り」だったこと。シンセサイザー周辺の表記は「OSC(オシレータ)」とか「ENV(エンベロープ)」などと大文字で書かれるイメージがあったため、大文字で入力するものとばかり思っていました。Pdでは、すべて小文字でなければならないということで、初歩の初歩である「osc~」から「dac~」につないで音を出すところでつまずいてしまいました。orz(よく見れば、本でもWebサイトでもすべて小文字だったのだけど、「osc」って偶然にも大文字と小文字の区別がつきにくいのよね…)とりあえず、サイン波の音を出すことはできました。

「440」というのは、お察しの通り「440 Hz(A4)」の音という意味です。(このBlogでもたびたび登場しています)この数値を変えると、様々な音程のサイン波を出すことができます。これをベースにシンセサイザーっぽいものを作っていきたいと思います。長くなってしまったので、続きは次回以降ということで。

「Pd(Pure data)でシンセサイザープログラミング」

2025年6月4日水曜日

ワイルドミニ四駆をiPhoneからリモートで動かす(MKZ4をiPhoneからコントロールする)

前回の続きです。秋月電子通商で購入した「MKZ4」という、タミヤのワイルドミニ四駆をiPhoneなどのスマホから無線で動かせるように改造するキットを使ってみるという話の3回目(最終)です。前回までで組立作業が完了して、今回はWi-Fiを利用してiPhoneからコントロールできるかやってみます。
#MKZ4は、メーカーサイトでも売り切れています。

メーカー公式YouTubeチャンネルで公開されている「スマホで操作する改造ミニ四駆製作キット「MKZ4」 [Cerevo]」を参考にしながら作業を進めました。手順をテキストで表すと以下にようになります。
#MKZ4のCN3(L字ピンヘッダ)のショートピンがB側になっていることを確認してから作業をしてください。

  1. MKZ4の電池ボックスに単4電池を3本入れてスイッチをONにする(MKZ4のLEDが点灯する)
  2. iPhoneの「設定」を開き、「Wi-Fi」の接続先に出てくる「MKZ4」をタップしてMKZ4と接続する
  3. Webブラウザーを開きアドレスバー(URLなどを入力する欄)に「192.168.4.1」と入力してMKZ4にアクセスする
  4. 「CONNECTED」という青緑色の画面が出たら準備OK
    #推奨されるWebブラウザーは「ユーザーガイド」のページに掲載されています。
  5. 青緑色の画面をスワイプしてワイルドミニ四駆を動かす

マニュアルの文書は、PDFファイルで公開されていますので、こちらも参考にしながら作業を進めました。前進は画面下方から上方にスワイプし、後進は画面上方から下方にスワイプするといった操作をします。ステアリングは、左右のスワイプで左右に傾けることができます。前後進は問題なく動作しましたが、ステアリングの動きがおかしくて、ステアリングを動かそうとするとどちら向きに動かしても右側に傾いてしまいます。動作中にMKZ4のLEDが点いたり消えたりするので、はんだ付けが不十分なところがあるのかもしれません。もう少し調整作業が必要なことがわかりましたが、とりあえず動作することだけは確認できました。
#事情により、USBでPC等に接続できるデジタル顕微鏡を職場の職員に貸し出しているので、返却されたら調整作業をやっていきたいと思います。

「ワイルドミニ四駆をiPhoneからリモートで動かす」