- 公開日:2021年03月17日
- | 更新日:2022年10月27日
自動開閉ゴミ箱作ってみた。 第1話 「何を作ろう?そもそもマイコンって何ができるの。」
- ライター:たまちゃん
- その他
はじめまして。2020年4月からFAEとして入社した、たまちゃんです。
マクニカでは、技術職に配属されたFAEに製作実習というミッションが与えられます。
この製作実習で、モノづくりのイロハを学び実業務へと羽ばたいていきます!
期間は約1ヶ月、ある製作条件が与えられ、その条件内で作りたいものを作り、最後に会社の皆さんに作った製品を発表します。
では、その製作条件とはどのようなものでしょうか?
何を作るの?
製作条件
製作条件は、5つあります。
- MSP430マイコンキットを使用する
- C言語を用いてプログラムを作成する
- 表示系をつける
- 何らかの割り込みを使用する
- センサーをつける
何でも作れそう
この5つを満たしていれば、自分の作りたいものを作れます。しかし、この条件だけ見ると何でも作ることができてしまいます。
先輩方からお聞きする話だと、最初にぶち当たる壁が、この「何を作るか」だそうです。
案の定、私自身この条件で何を作ればいいんだ!と迷いに迷いました。
ここは、ひと呼吸…
冷静になって、作りたいものを決めるアプローチ方法について考えてみましょう。大きくアプローチ方法を分けると2つに大別できると思います。
- 自分はこれが作りたいんだ。その目的のために、マイコンを使って実現する。
- マイコンはできることは限られてる。では、マイコンのできることから逆算して作るものを決めよう。
「作りたいものからの視点で考えるか、実現が可能な視点で考えるか、みっちり一か月もの間を製作実習に充てるので失敗はしたくない!」その観点から考えると2案のアプローチが良いのではないか!ということで、マイコンでできることから見ていき何を作るか決めたいと思います。
マイコンでできること
そもそもマイコンの語源は?
言葉としては、「マイクロコンピュータ(microcomputer)」だったり、「マイクロコントローラ(microcontroller)」などの略称です。
内部構造は?
マイコンの内部は大きく5つの装置に分かれていて、一般的に、「5大装置」と呼ばれているので聞いたことがある方も多いかと思います。内部の装置を1つ1つ簡単に見ていきマイコンでできることを探っていきます。
1. 入力装置
こちらの装置は外部とコミュニケーションをとる場所になります。日本語と、英語では会話は成り立たないですよね。マイコンでも同じなんです。共通言語( GPIO、I2C、UART、ADC… )で話すことで初めて会話ができます。
それぞれの言語には特徴や得意分野があるわけですが、それは追々見ていきたいと思います。
ここで外部からの様々な情報を入力します。
2:制御装置
マイコンの内部にはバスと呼ばれるデータや命令を送るための道路のような場所があります。ここでは入力装置などから受け取ったデータをそのほかの装置に送る働きをしています。
ちなみに今回製作実習で使用するテキサスインスツルメンツ社のマイコンMSP430には命令とデータでバスを共有するノイマン型アーキテクチャが採用されています。
3:演算装置
演算装置は、名前の通り計算を行うところで、マイコンの中でも肝となる装置です。
データに対して足し算、引き算、論理和、論理積などの様々な算術論理演算を行うことができるんです。
4:記憶装置
記憶装置は、演算装置で計算した結果を一時的に保存したり、マイコンを動かすためのプログラムを保存したりしておく場所になり、大きく分けるとRAMとROMに分けられます。
RAM(Random Access Memory)とは揮発性メモリで電源を落とすとデータが消え、ROM(Read Only Memory)とは不揮発性メモリで電源を落としても記憶を保持されます。この両者を使い分け、命令やデータを保存しておくのです。
5:出力装置
出力装置は、演算した結果や記憶していたデータを外部に伝える役割があります。
入力装置と同様に、外部とコミュニケーションをとるためのさまざまなインターフェース(GPIO、DAC、PWM…)があります。
これに決めた!!
マイコンでできることを5大装置からざっくりとみてきました。5大装置を見ていく中で、マイコンってセンサーなどの外部の情報を取り込んで、計算を行ったり、タイミングを調節したりして
外部に伝えてるんだ、という何となくのマイコンのできることのイメージがつかめました!
我が家のゴミ箱
ところで、我が家には『足で踏んで開閉するゴミ箱』があります。ごみを捨てるとき、椅子からわざわざ立ち上がりゴミ箱の前まで行かないと捨てられないことに日々不便さを感じていました。5大装置を見ていく中で、そんな悩みを解決してくれそうな製品を思いついてしまいました。
その製品とは、わざわざ立ち上がらなくても手をかざすだけで、自動的に開閉するごみ箱です!
センサーで手をかざしたのを検知、その情報をマイコンで受け取りいろんな計算を行いその情報をモーターに伝えモーターでゴミ箱のふたを回して、ふたを開ける。マイコンを使って、実現できそう!!
しかし、ここで製作条件③の表示系は何に使えばいいだろう、という疑問にぶつかりました。
そういえばゴミ箱から思いつくのは、いつもゴミの日を忘れてしまうという悩みでした。皆さんも一度や二度は必ず経験したことがあると思います。この悩み、表示系にディスプレイを使い、カレンダーを表示してゴミの日になったらカレンダーとブザーで通知してくれる機能を実装することで解決するんじゃない?そんなアイデアが浮かびました。
ゴールへの道筋が見えてきました。
手をかざすと自動で開閉するごみ箱 with ゴミの日通知機能
この構想からイメージ図を作成しました。
図1. 製品イメージ図
図1を作ってみると、なんかイメージがついて作れそうな気がしてきました!
この図をみて、
ふたの開け閉めってどんな構造になってるの?
マイクロフォトセンサーって?
あれOPEN/CLOSEボタンがあるけど手をかざして開閉するんじゃなかったけ?
もしかしたらこのような疑問がわいたかもしれません。安心してください、次回以降の記事でみっちりと解説させていただきます。
では、この作成したイメージ図をもとに、製作実習1ヶ月突っ走りたいと思います!