東京工業大学 ロボット技術研究会

東京工業大学の公認サークル「ロボット技術研究会」のブログです。 当サークルの日々の活動の様子を皆さんにお伝えしていきます。たくさんの人に気軽に読んでもらえると嬉しいです。
新歓特設ページ        ロボット技術研究会 HP        ロボット技術研究会 twitter公式アカウント

id研

「ロボット技術研究会」通称「ロ技研」は、その名前の通りロボットの制作や研究はもとより、電子工作や機械工作、プログラミングなどの幅広い分野にわたるものつくり活動を行っています。

カテゴリ一覧: loading

メダカの照明 Ver.2

こんにちは、14のけりです。
今回は最近作った電子工作の紹介をします。

概要

メダカの水槽の照明

以前、PICで作ったメダカの水槽の照明(←リンク)を紹介しましたが、今回はこれをバージョンアップしました。めだかの照明がどのようなものかは以前の記事を参考にしてください。

fish

格安WiFiモジュール

今注目のWiFiモジュールであるESP-WROOM-02を使ってWiFiに対応しました。これにより、スマートフォンなどからブラウザ経由で操作できます。

このWiFiモジュールを使った赤外線学習リモコンの記事も書きましたので合わせてご覧ください。

ESP-WROOM-02 WiFiモジュール 秋月電子にて550円(2016/3/14現在)
esp-wroom-02

ギャラリー

全体

LEDはなんと、

  • 白色LED12個
  • 赤色LED6個
  • 緑色LED6個
  • 青色LED6個

の計30個の1WパワーLEDを備えています。

all

基板

Dサイズのユニバーサル基板に実装しました。回路はとても簡単です。

board2
board1

LED

light

回路図

sketch

スマホからの操作画面

ボタンを押すことでLEDの明るさを11段階で変えることができます。

page

時間同期モード

「Set Time Sync」から時間同期モードに設定すると、朝6時から徐々に明るくなり正午にMAXになり、午後6時までに消灯するようになっています。これでめだかは時間感覚が狂わず、健康に生きることができます!!

時刻はNTPサーバーから取得しているので時計合わせも不要で正確です。

ソースファイル

ソースファイルはGithubに公開していますので興味がある方はご覧ください。→リンク

ただし、他人に見せるつもりで書いたソースではないので説明は皆無です。

まとめ

シリアルによるコントロールだった前のバージョンに比べてかなり進化しました!今後はJavaScriptなどを使ってさらに進化させていきたいですね!

fish_up

シンガポールでロボコンしてきました。

みなさんこんにちは
椋けり(@kerikun11)です。
夏休みになりました。ロ技研のみなさんは進捗めまぐるしいことでしょう。 

今回の話題は僕が参加してきたIDCロボコンについてです。

東工大の制御システム工学科2年には「創造設計第一」という授業があり、授業の中で個人戦のロボコンをします。
IMG_0640

そこで優秀な成績を収めると、世界大会のIDCロボコンに参加することができます。
1年生のみなさん、4類からも5類からも制御システム工学科に来ることができます。是非来てね!

ほぼ毎年、ロボット技術研究会の中にIDCロボコン参加者が出ます。今年は僕が行って参りました!

今年のIDCロボコンはシンガポールで行われました。ちなみに去年はモロッコ、一昨年はブラジルでした。来年はタイで行われます。

日本からは東工大4名、東京電機大学6名の計10名が参加しました。 東京電機大学の選考方式は、東工大とは違い、英語のプレゼンなどが含まれているそうです。(もし僕が電機大生だったら参加できなかっただろう...)

参加国は、アメリカ、モロッコ、日本、中国、シンガポール、エジプト、タイ、韓国です。
人数は合計54人で、10チームに分かれて、ロボットを作り、ロボコンをします。
一つのチームには、基本的に同じ国の人はいないので、コミュニケーションをとるのがとても大変です。 

大会の開催期間は12日間です。最終日にロボコンがあります。


〈ルールについて〉(東京電機大学のHPより引用)
theme

field

今年のテーマは「Space Cleaner」です。デブリに見立てたオブジェクトを回収して、運搬するゲームです。
ゲームフィールドは、軌道ゾーン、スペースゾーン、地球ゾーンの3つからなります。外側の軌道ゾーンにあるオブジェクトを集め、地球ゾーンに運ぶことで得点できるルールです。軌道ゾーンでオブジェクトを回収するオービットロボットとスペースゾーンから地球ゾーンに運搬するスペースロボットの2台を製作していきます。

軌道ゾーンには回収の難易度に応じて得点が異なる2種類のオブジェクト(白球と黄色球)があり、それ以外に総得点が2倍になるボーナスオブジェクト(オレンジ球)があります。

フィールド上の青いゾーンにロボットが触れてしまうと、かなり大きな減点ペナルティがあります。

競技時間は予選ラウンドが150秒、決勝トーナメントが180秒です。
 IMG_1489

東京電機大学のホームページに特設ページがあり、デイリーレポートがあるのでこれを見るとわかりやすいです。
URL : http://www.fr.dendai.ac.jp/education/idc2015/idc2015dailyreport.html 


僕のチームは以下の通りです。
20150807_123727000_iOS
左から
機械担当、スペースロボット操縦のタイ人
機械担当の中国人
制御担当、チームリーダーのモロッコ人
機械担当のエジプト人
制御担当、オービットロボット操縦の僕、日本人
です。
 
各チームには、2種類のArduino、サーボモーター、DCモーター、アクリル板、アルミ板などロボットを作るには十分な材料が与えられます。しかも、各チームに1台ずつ3Dプリンタも与えられました。 
初日には、Arduino講習会や、3DCAD講習会もあり、環境は十分といえます。
ただし、言語はすべて英語です。英語です!! 
 20150721_035035005_iOS

僕はロボット作りは好きです。
しかし、英語は全然できません。
チームメイトはみんな英語が話せたので、
僕だけ話せない状況でした。
僕は絵を描いたり、辞書を駆使したりして必死にコミュニケーションを試みました。
IMG_0823
20150721_151456004_iOS
↑こんな感じです。

午前9時から午後6時までワークショップで、そのあとはたまにチームミーティングがあったりしたので、かなり忙しい毎日でした。しかも最後2日は、午後6時までだったのが午後9時30分までに延長され、ずっと作業をしていました。まぁ、ロボコン直前はどこもこんな感じでしょうか。



6日目の土曜日の午後と、7日目の日曜日はお休みでした。
そこで観光を楽しみます。シンガポールの参加者が僕たちを案内してくれました。
世界3大がっかり観光名所、マーライオン!
IMG_1181

みなさん、知ってますか?
シンガポールにはマーライオンが5つあります!!←ここ、がっかりポイント☆

そのうち、2つを見てきました。
IMG_1313

それなりに楽しめました。

Day offが終わると、ロボコンへラストスパートです。
僕のチームは下の写真のようなロボットを作りました。
IMG_1459
IMG_1567


戦略は単純で、スペースデブリであるボールをオービットロボットがアームで一つずつ拾い、それをスペースロボットが受け取って、地球に入れるだけです。10チームの中で僕のチームが一番シンプルだったと思います。

本戦の前にはシーディングコンテストという予選リーグがありました。5チームずつ2つのリーグに分かれてリーグ戦をします。各リーグの最下位、つまり10チームのうち2チームはこの時点で落ちてしまいます。(けっこう厳しい)

シーディングコンテストの段階では、多くのチームが安定性を欠いていて、僕らのシンプルな構造のロボットは全勝で単独首位に立つことができました!!
IMG_1498
僕のチーム名は「MEC-JT」です。Morocco Egypt China Japan Thailandの頭文字をとっています。(ハイフンはなんとなくらしい。僕がいない間にいつのまにかチーム名が決まっていた。)

本戦は、8チームのトーナメントです。さすがに本戦ではどのチームも安定性が向上しており、簡単には勝てませんでしたが、なんとか決勝まで勝ち残りました!
創造設計第一は50人のトーナメントだったのでそれに比べればかなり短いトーナメントでした。

決勝では、相手の大量得点に敵わず、負けてしまいました。残念です。
ということで、準優勝に終わりました。
IMG_1652

IMG_1654
 

まとめ

このロボコンで感じたことは、英語力のなさです。
コミュニケーションは、まぁ何とかなります。相手が聞こうとしてくれていれば伝わります。しかし、コミュニケーション以外にも英語はあります。ルール説明や工作機械の説明など、 理解しなければならないこと、理解していて当然のことも、英語がわからないせいで全く理解できませんでした。それにより有意義な活動ができないのはもったいない!ということで、英語を勉強しましょう... 

留学でも旅行でもなく、ロボコンをしにシンガポールに行ってきました。異国混成チームでロボットを作る。このような機会はほとんどないと思います。作業を進めるのはそう簡単ではありませんでしたが、チームメイトみんなで話し合い、協力して、苦労して、ロボットを作ることができました。ロボコン本番で点を獲得したときの感動は今でも忘れられません。すばらしいイベントに参加できて、感謝の気持ちでいっぱいです。

メダカ水槽の照明の自作

こんにちは。
椋けり(@kerikun11)です。 
みなさん、進捗いかがですか?
僕は、ぼちぼちです。
 
今回紹介するのは、
メダカの水槽の照明です。 

高校時代の親友の刺激を受け、
5月ごろからメダカを飼い始めました。 
生き物を飼うと、実に癒されます~
IMG_0529

水槽には水草があるので、
程よく光を当てなければなりません。
普通のLEDライトで照らしてもよいのですが、
ここはロ技研民として、自分で照明を作ることにしました。 

ところで、皆さんが帰宅する時間は何時ごろですか? 
帰宅するころには暗くなってますよね? 
朝、家を出るときに照明をつけて置くと、帰ってきても点きっぱなしです。
それでは、メダカの時間感覚が狂ってしまい、かわいそう 
ということで、マイコンで明るさを自動制御することにします。 

さらに、こんなことで電気を無駄使いしていると、親に叱られるので、
電力源はソーラーにします。
とても運がいいことに、僕の家には自作の100W級ソーラーシステム(←リンク)があります。
これを電力源に使います 
IMG_1703

メダカのことを英語でkillifishと言います。
なので、今回の工作の名前は killifish light としました。

killifish light のポイント
1.時間に合わせて明るさが自動で変わる。
2.ソーラーを電力源にする。
3.電子工作を楽しむ。

です。

マイコンは、いつも使っているPICマイコンにしました。
PIC18F27J53です。↓秋月URL
http://akizukidenshi.com/catalog/g/gI-05847/
このPICはPICの中でもかなりハイスペックです。内蔵モジュールも多く、とても便利に使えます。
そのなかでも、今回の目玉は、RTCC(リアルタイムクロック&カレンダー)モジュールです。
クロックを取り付けるだけで自動で時計のカウントをしてくれます。
これをもとに、水槽の照明の明るさを制御します。 

LEDは秋月電子のパワーLEDを使いました。
I-07750
常用の1W白色パワーLEDを12個と
装飾用として赤、緑、青の1WパワーLEDをそれそれ6個ずつ用意しました。
LEDは全部で30個ですLED好きにはたまらないですね

それらを放熱用のアルミ板にのせて、LEDを取り付けました。
けっこう熱が出ます
IMG_0562
IMG_0563

次に基板を作ります。
今回はユニバーサル基板で作りました。
部品も少ないので2時間くらいでできました。こんな感じです。

IMG_0564

写真左が電源ケーブル、右がLEDのケーブルです。
上の青くて丸いものは半固定抵抗です。つまみを回して明るさを変える機能も付けました。
右下のコネクタは、シリアル通信UARTの端子です。PCと接続できます。

IMG_0567

 今回は、ソフトウェアも気合を入れて作りました
シリアル通信UARTによってPCから様々な機能を設定できるようにしました。
IMG_0568

USB⇔シリアル変換器
IMG_0570

ターミナルを操作しているようなイメージです。
コマンドを入力してENTERを押すと、レスポンスが返ってきます。
PC側ではTera Termでシリアル通信をします。
まず、PCで「help」と入力するとメニューが現れます。help2

メニューにあるように「t」と入力すると現在時刻が表示されます。
t

「adjust_the_time(at)」コマンドを用いて時計合わせをします。
「at y 15」と入力すると、年が2015年になります。
aty

同様に「at M 6」と入力すると、月が6月になります。
続けて、日、時、分、秒を設定して、時計合わせ完了です。
ats

一度設定してしまえば、もう設定はいりません。
見てわかるように、曜日も表示されます。

「set sync」と入力すると、時間同期モードになり、
昼間は明るく、夕方には徐々に暗くなり、夜は消灯というように、
照明を自動制御をしてくれます。
setsync

こんな感じです。
IMG_0572

ここまでで、一応、目的の機能はできました。


ここからは、フルカラーLEDで遊びます。
白色LEDのほかに光の三原色のLEDも付けたので、それを使います。
シリアル通信でコマンドを送るとその通りに色が変わります~

まずは、「pwm clear」コマンドで全部のLEDを消灯します。
pwmclear
IMG_0571

次に「pwm R 100」などと色と、パーセンテージを入力するとその明るさで光ります。
pwmr
IMG_0573


緑色
pwmg
IMG_0579


青色
pwmb
IMG_0580


赤+青=マゼンタ
pwmrb
IMG_0577


赤+緑=イエロー
pwmrg
IMG_0574


緑+青=シアン
pwmgb
IMG_0576


最後に全色をつけてみました。
写真ではなんだか赤っぽいですが、直接目で見るとけっこういい感じです。
pwmrgb
IMG_0575


PCがなくても基板の上の半固定抵抗を回すことで明るさを細かく変えることができます。
また、タクトスイッチで時間同期の設定やLEDのオンオフ設定ができます。
IMG_0564



まとめ 
 メダカの照明というのをきっかけに、電子工作を繰り広げました。作っていてとても楽しいですw
しかも、これはソーラーの電力で動いているので、どれだけLEDを光らせても電気代は0円です
これほど素晴らしいことはほかにありますかね??
電子工作ってなんでこんなに楽しいんだろう
メダカちゃんたちも元気いっぱいです
IMG_0534


 

【id研】ライフゲームをマイコンから出力

こんにちは,id研所属,学部3年の有塩です.

(去年)工大祭で展示しました,「ライフゲーム」を画面に出力するマイコンボードの紹介です.

board
gamen



...ところで,「ライフゲーム」とは何かご存知でしょうか?

続きを読む

トランジスタで作った時計

井土です。

先週ロボット技術研究会の役員が交代し、1年間の部長としての役割が終わりました。
今年度になって部員数は200人を突破し、色々ありましたが無事に終わりました。
これも支援してくださった皆様のおかげです。どうもありがとうございました。


さて、今回の本題は

トランジスタで作った時計
      (トランジスタ時計)


についてです。

id研の井土・齋藤・大貫・中村の4人で製作しました。

まず、完成品なのですがこんな感じです。
make


Maker Faire Tokyo2014(MFT2014)のロボット技術研究会ブースで展示をしました。
トランジスタとして2N7000(Nch MOS-FET)を640個使用しています。 
マイコンや74系のICは使わずに、クロックの分周器・カウンタ・7segデコーダは
すべてディスクリートのトランジスタで作りました。


◯なぜ作ったのか
話は 1 年前にさかのぼります。
昨年は論理演算であるNANDのみを用いて時計 (NAND 時)を製作し、
MFT2013で展示しました。(以前、少し紹介しました) 

すると
「トランジスタでやってみてよ (笑)」
「あっちにリレーだけの時計があるよ」
という意見・煽りを多く頂きました。

「あの人たちをを見返してやりたい」
「そうだ次はトランジスタだけで作った時計を展示しよう」


そこから、トランジスタだけで時計を作るプロジェクトは始まりました。



さて、ここからは設計・製作の過程を紹介していきます。
◯おおまかな構成
各機能を図にするとこんな感じです。
block

基板は全部で17枚(切削によるプリント基板)で、
各基板一枚で10進カウンタなどの機能を一つが完結しています。
 
図にはありませんがカウンタの桁上りのところにスイッチが入れてあり、
強制的にクロックを送ることで時刻合わせの機能を実装しています。
このスイッチのチャタリング防止にシュミットトリガー回路をつけているのですが、
これももちろんトランジスタ(2SC1815)でできています。
 

◯トランジスタによる論理演算
カウンタやデコーダはすべてAND,OR,NOTなどの基本的な論理回路の組み合わせでできます。
ということでまずは基本的な論理回路をトランジスタで作りました。

簡単に作れるNOT・NAND・NORはこんな感じです。
負荷の抵抗は10kΩで、50kHzくらいまでなら問題なく動きます。
59


バイポーラトランジスタだとベース電流がまあまあ必要で、
この回路が数百個もあると消費電流が大きくなってしまうので、FETを選択しました。
 
また、プッシュプルにしないのかと思われる人もいるとは思いますが、
PchのFETが安く手に入らなかったのでNchFETと抵抗で作ることにしました。
チップのFETを許せばPchの低価格なものもあるのですが、
どうしてもDIPで作りたかったのでこのような回路になりました。
(DIP部品で基板がでごちゃごちゃしてるほうが好きなので) 


◯デコーダの設計
論理回路はNANDもしくはNORだけで全部作れます。
去年はそれに基づき、NANDだけで時計を作ったわけです。

今年はトランジスタでせっかくなのでNANDではなくNORを作り、
そのNORを基本として組み合わせて上位のカウンタやデコーダを作っていきました。

デコーダはどうやって作るのでしょうか。
小さいものなら以下の手順が簡単です。
1.真理値表を書く
2.論理式(加法標準形)にする
3.カルノー図を使って論理式を簡単化する

簡単化についてはここがわかりやすいです。
http://akita-nct.jp/yamamoto/lecture/2003/2E/karnaugh_diagram/node1.html

論理式を式変形して項の数を減らせると、回路が小さくなるので簡単化をします。
もちろん論理式上での簡単=トランジスタ数が少ないではありませんが、
論理式の簡単化くらいしかわからなうのでとりあえず簡単化を行います。

去年のNAND計はカルノー図を使って、すべて手作業で行いました。
今回はクワインマクラスキー法というアルゴリズムを使ってコンピュータでこの作業を行いました。
クワインマクラスキー法で論理回路を簡単化するツールをC++で自作し、
それによってデコーダ・カウンタの設計を自動化したのが今回の設計における特徴です。

この簡単化ツールは真理値表に当たるデータの書かれた入力ファイル(画像では 37dec.txt)を用意すれば
自動でその真理値表をみたす論理式を出し、論理式の簡単化を行ってくれます。
真理値表を読み取って論理式にしたものが画像のinputに表示され、
それを簡単化したものがoutputのところに表示されます。

1,2,3...は変数のA,B,C、-は否定を意味しています。
input1の例だと、真理値表は
1
で、それを簡単化すると
2

になるという意味です。
05

真理値表のdon't careにもちゃんと対応をしていて、don't careを考慮した上で簡単化をしてくれます。
また、簡単化した結果が複数個あるときはそれらを全部出してくれます。

このツールによってデコーダの設計がとても楽になりました。
この時点でデコーダはNOT,AND,ORで構成されているので、
それらをNORにしてNOR特有の簡単化などを行ってデコーダの完成です。


◯カウンタの設計
カウンタはD-FFを元に設計をしていきます。
フリップフロップならなんでもいいんですが、D-FFだと考えるのが楽なのでD-FFを選択しました。
そのD-FFはトランジスタでNORを作り、それらを以下のように組み合わせることで実現します。
dff


長くなるので省略しますが、下の図のような感じで
D-FFの出力→組み合わせ回路→D-FFとやってやることで順序回路が作れます。
cnt

ここでも組み合わせ回路(デコーダ)を作る必要があるのですが、
先ほどと同様に、自作の簡単化ツールを使うことで自動で小さい回路を設計することができます。


◯実装
設計ができたら今度は実装です。
本当はユニバーサル基板でやりたかったのですが、
MFTに間に合いそうになかったのでプリント基板を使いました。
学校のものつくり支援センターには基板切削機があるので、それを使って片面のプリント基板を作ります。

そのために設計した論理回路たちをトランジスタレベルでCADに入力し、配線図を作成します。
最終的に6種類くらいの基板を設計しました。

参考までに、これが4bitの2進数を入力して7segLED用のデータを出すデコーダの配線図です。
標準ロジックでいう7447と同じような機能です。
22


基板データができたら基板切削機に基板を作ってもらい、はんだ付けをするのみです。
材料は大量のトランジスタと抵抗、少しの電解コンデンサとコネクタのみです。
31

できた基板の一部を並べるとこんな感じです。

トランジスタの森
44

整列するトランジスタたち
08


最後に組み上げて、コネクタを圧着しまくって配線したら完成です。

54




◯おわりに
MFT2014にトランジスタ時計を展示した結果、まぁまた煽られますね。
次は真空管らしいです。
 
ギャラリー
  • ABUロボコン結果報告
  • スマホから部屋の電気をつけてみた
  • MakerFaireTokyo2017に出展します
  • MakerFaireTokyo2017に出展します
  • MakerFaireTokyo2017に出展します
  • MakerFaireTokyo2017に出展します
  • MakerFaireTokyo2017に出展します
  • MakerFaireTokyo2017に出展します
  • たのしいロボット帝国 製作物紹介
記事検索
最新コメント