(第一話) 音量を一気に上げるだけのイタズラ専用ボタンを作ってみた

こんにちは。もりかぷです。最近イナイレがより楽しくなってきました。

今回もイナイレ工作シリーズです。まさかの第三弾まで行くとは思ってなかったです。

今回は何を作るのかと言うと、「第11話 一星充の音量が上がるボタン」を作っていきます。
あ、言っておきますが、製作は自己責任でお願いします。

では早速必要なもの↓

材料

Arduino Leonaldo Pro Micro(の互換品)
・USB micro-Bケーブル(Android スマホの充電に多く使われていたもの)
なるべく小さめのブレッドボード
・ボタン (今回は富士電機 押しボタンスイッチ 大形Φ40 赤 AR30M0R-10Rを使用)
・ケース(今回は3Dプリンターで自作)
・各種配線材

ぶっちゃけ何円で作れる?

計算してみました。

Hiletgo Leonardo Pro Micro 1130 円
USB micro-B to Aケーブル家にあったので0 円
小さめのブレッドボード同じく0 円 (一つ100 円位)
押しボタンスイッチ615 円
ケース(PLAフィラメント 45 m – 密度100 %)300 円
配線材7 円
合計2052 円

Hiletgo Leonardo Pro Microは底値が300 円くらいです。大量に買うなら中国通販のAliExpressで底値で買えます。ですが、僕はそこまで大量に作るつもりがない(&そこまで強いことはできない)ので、Amazonで購入しました。

じゃあ作ろう

では作っていきます。
何から作るかと言うと、やはり筐体となるケースです。

筐体はCADを使って作っていきます。
もちろん作る前にノギス等でパーツのサイズをしっかり測っておきます。

で、今回は手で持てる大きさにする為、大きさに気をつけます。
個人的に測ったところ、60mm*65mm*60mm (縦x横x高さ)が限度でした。
という事で、このサイズに合わせて作りました。

※3Dデータは後ほどダウンロードリンク貼っときます

下の部分
穴はPCとの通信ケーブルを通すために付けてあります。
上のキャップ

3Dデータが完成したら、3Dプリンターに投げて印刷します。
印刷には時間がかかるので、その間にプログラミングしておきます。

プログラミングしよう(めっちゃ簡単)

プログラミング…と言われても…と思う方もいると思いますが非常に簡単です。
動作の流れとしては以下の通りです。

プログラムを作るときはこれを繰り返せば良い

じゃあ、音量はどうやって上げるのかという問題が出ます。
そこでパソコンのキーボードを見てみて下さい。きっと、音量を上げ下げしたりミュートするキーがあるでしょう。

という事は、ボタンが押された時に音量を上げるキーを短時間で連射すれば良いのでは?と言う事になります。

で、プログラミングと言っても様々な言語があるのですが、Hiletgo Leonardo Pro MicroはArduinoシリーズの互換品なので、C言語に似たArduino言語というものを使って書きます。

多分、このブログを読んでくださっている層は、技術関連が強い人が多いと思いますが、よく分からない方もいると思うので、簡単にコードを一つ一つ説明したいと思います。

Let’s プログラミング

では、早速Arduino言語でプログラミングしていきます。

コードを書くにはArduino IDEというソフトを使います。
ダウンロードはhttps://www.arduino.cc/en/Main/Softwareの「Download the Arduino IDE」から自分の使用しているOS(WindowsとかmacOS、Linuxのこと)を選択して下さい。

ちなみにWindowsは3種類ほどありますが、「Windows Installer」か「Windows app」を選択しとけば大丈夫です。Windows 8.1以上の方はMicrosoft Storeが使えるので「Windows app」が楽です。

選択肢によっては以下の画面が出るので「Just download」を選択すれば無償でダウンロードできます。Arduinoに寄付したい方は金額を選択すれば寄付できます。

あとはインストーラの指示に従えばソフトウェアをインストールできます。
インストールできたらソフトウェアを起動しましょう。

起動すると以下のような画面になります。
※画像はmacOS版のものですが、Windows版もほぼ同じだと思うのでこのまま進めます。


では最初に表示されているコードについて説明する前に、簡単に形式を説明します。
以下のようなものが表示されていますね。

画像の通りなのですが、voidの部分は値を返す時の形式(整数とか小数など)を示します。
ちなみにvoidは、日本語で空隙、つまり何も値を返さない事を示します。

「あ、ちょっと待って!値を返すとかどうゆう意味?」と思う方もいると思います。

以下の画像をみてください。

関数を人とみます。値は「おはよう!」という文字列とします。
では、人に「おはよう!」とまず挨拶をしましょう。すると人は、「おはよう!」と言う文字列を返します。
このように「値を返す」とは「呼びかけたら返事」をする事を指します。

つまり、先ほどのようにvoidとすると、「おはよう!」と呼びかけても「おはよう!」と返してくれないのです。(というか返せない)

う〜ん悪い子だな〜〜〜〜〜〜!

さて次は関数名についてです、

setupの部分は関数の名前を指します。ちなみに予約語と言って自分で関数を作る時に、使えない名前も存在します。ちなみにsetupは予約語です。

「え、使えないんじゃないの?」と思う方もいると思いますが、この場合は自分で関数を作っていないので大丈夫です。

()は関数に値を送る(渡す)ときに形式と変数の名前を入力します。ですが、今回は値を渡さないので()カッコだけにします。

関数の処理内容は{ }の中に書いていきます。

では全体の説明に移ります。

まずそれぞれの関数についてですが以下のようになります。

setup関数は電源を入れた時に最初に、1回だけ実行します。
つまり、何番ピンが入力だったり出力だったりするのかの設定などをここに書きます。

loop関数はsetup関数を実行した後に繰り返される関数です。
主に入力に対する処理内容(行いたい作業)をここに書いていきます。

Arduino言語では必ずこのsetup関数とloop関数がセットになって動作します。

以上で初期画面の説明を終わります。

さて、じゃあコードを書いていこう!と言いたいところですが、結構長くなったので一旦締めたいと思います。

ここまでお読み頂きありがとうございました!

第二話はこちら!

コメントいかがですか。