ページ 11

初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 15:29
by 史上最悪のデスペナ
機械制御を行うプログラミングをしなければならないのですが、マイコンの知識が一切ありません
そもそも、プログラムからどうやってモーターが動くのかすらわかりません。
とりあえずはPCでプログラムを組んで、キーボードのAを押すと1番のモーターが10度回転するというのをやりたいです。
どこかいいサイトはないでしょうか?

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 15:37
by softya(ソフト屋)
とりあえず始めたいのならArduinoと言うものがあります。 ※androidじゃないですよ。
「Arduino - Wikipedia」
http://ja.wikipedia.org/wiki/Arduino
USBで接続してパソコンから操ることが出来るマイコンです。
C/C++でプログラミングしますが制御ライブラリが充実しているので大抵のことはライブラリで事足りますので簡単です。
「建築発明工作ゼミ2008: 目次:Arduino」
http://kousaku-kousaku.blogspot.jp/2008/07/arduino.html

ただ、「1番のモーターが10度回転するというのをやりたいです。」
と言う動作がステッピングモーターかサーボモーターを使うしか無いですがハードウェアの設計はどうなっているのでしょうか?

【補足】
面倒なハードウェアもシンプルなものならシールドというのをジョイントするだけで機能拡張できます。
「スイッチサイエンス/商品詳細 Arduino モーターシールド Rev3」
http://www.switch-science.com/products/ ... uct_id=788

【追記】
「Arduino - YouTube」 Arduino で出来る色んな事。
http://www.youtube.com/results?search_query=Arduino
ついでにArduino互換機である大人の科学のJapaninoで出来ること。
http://www.youtube.com/results?search_query=Japanino
[youtube][/youtube]
[youtube][/youtube]
重かったので動画を削った。

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 15:59
by 史上最悪のデスペナ
ハードウェアの設計・・・・・・?
ごめんなさい。本当に知識0なので何を指しているのかすらわからない始末です
モーター側の設計ということでしょうか?
とりあえず、安いステッピングモーターにしようかと
とりあえずは試作なので安く済ませます。とりあえずはモーターを動かせれば。機械のほうは何とかなるので。
一応、最終的には20個以上のモーターを動かして機械を動かすことになるのではないかと

アームを動かしたり、注入したりetc

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 16:04
by softya(ソフト屋)
20個以上のモーターを制御するのなら、それなりのハードウェアやマイコンが必要です。
20個だと、もうロボットの範疇の個数ですからね。

あとモーターの回転速度、トルク、応答速度など要求スペック次第ではステッピングモーターでは役不足からも知れません。
※ 速度やトルクなどの面でステッピングモーターはDCモーターに比べて不利です。

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 16:09
by 史上最悪のデスペナ
Arduinoに2つまでモーターが接続できるなら10個使えば・・・・・・できませんかね?
一応、サーボモーターが確かうちに10個ぐらいあったような・・・・・・?
とりあえずはそれを使ってみます。

まずはArduinoを買ってみます

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 16:21
by softya(ソフト屋)
史上最悪のデスペナ さんが書きました:Arduinoに2つまでモーターが接続できるなら10個使えば・・・・・・できませんかね?
それぞれのマイコンの制御で許される応答時間とか制限は無いのでしょうか?
0.1秒ぐらいズレても良いのならぜんぜん大丈夫だと思いますが1ms以下の精度が必要なら統合制御をするマイコンが必要で本格的なロボットを作るのと同じぐらいの高度なものとなります。
ちょっとした物を作るのと複雑な制御のもの作るのでは要求される技術レベルが全然違いますので甘く見過ぎないほうが良いですよ。Arduinoをマルチ接続するだけで技術レベルが跳ね上がりますからね。

あとセンサーとかも無いんでしょうか? センサーもマイコン制御ですよね。そうなると更に複雑になります。

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 17:58
by non
モーターと一口にいっても、DCモータ、ステッピングモータ、デジタルサーボ、ACモータ etc 
全体として何をしたいのか示してもらえませんか?それによってマイコンやモータは何がよいかも決まるかも?

「1番のモーターが10度回転するというのをやりたいです。」
ここだけ読めば、ステッピングモータが一番簡単です。

ステッピングモータはパルスが1つ入るたびに、決められた角度だけ回転します。
決められた角度というのは、ステッピングモータ固有の角度で、例えば、360パルスで1回転するものを使えば
10パルスを加えてあげます。正しくは、入力されたパルスで回転するように、ステッピングモータドライバが
必要です。

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 18:05
by softya(ソフト屋)
史上最悪のデスペナ さんが書きました:アームを動かしたり、注入したりetc
ここが最初の話と違う不穏な感じの箇所ですよね。
工業用ロボット?って感じですが、ステッピングモーターだけで制御できるとは思えません。

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 18:54
by 史上最悪のデスペナ
どこまで話していいのかわからないので少しフェイクも混ぜさせていただきます

やりたいこと

PCでAとキーボードを押すと、あるプログラムが起動
そのプログラムにより、
アームがボックスαから液体を持ってくる
アームがボックスβから液体を持ってくる
二つを混ぜ合わせる

簡素化するとこんなとこでしょうか。操作自体はもうちょっと複雑ですが・・・・・あ、そう考えると20個もいりませんね。5つ程度でできそうです

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 19:12
by softya(ソフト屋)
史上最悪のデスペナ さんが書きました:どこまで話していいのかわからないので少しフェイクも混ぜさせていただきます

やりたいこと

PCでAとキーボードを押すと、あるプログラムが起動
そのプログラムにより、
アームがボックスαから液体を持ってくる
アームがボックスβから液体を持ってくる
二つを混ぜ合わせる

簡素化するとこんなとこでしょうか。操作自体はもうちょっと複雑ですが・・・・・あ、そう考えると20個もいりませんね。5つ程度でできそうです
私もやった事無いですがロボットアームの制御が中心ですよね?
左右上下の移動とボックスから取り出すために前後の移動と掴む動作で4つのモーター。
掴んだアームをを回転して液体を下に落とす。これで5つ目のモーター。
ってことでしょうか? 工作能力が必要そうな機器ですね。ここは実力がある人がいると言う理解で良いですか?

まぁ、位置とアームの掴み具合とか制御するのにフィードバックセンサーもないとだめでしょうね。
arduinoで組むと却って面倒な気もするシロモノですがシビアなタイミング制御は必要無さそうですがロボット用のマイコンボードを使ったほうが多数のモーター制御には便利かなぁ?とは思います。
こんだけやるなら電子回路設計の経験者がいないと辛いかなぁと不安。

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 19:17
by 史上最悪のデスペナ
そうですね。工作部分に関しては大丈夫な人がいます
とりあえず、最初の段階としてはフィードバックセンサーなどのセンサーの類は無しで行こうかと思います
電子回路設計は・・・・・・・その道離れて十数年という人ならいますが^^;
ロボット用のマイコンボードを少し探してみます

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 19:30
by softya(ソフト屋)
史上最悪のデスペナ さんが書きました:そうですね。工作部分に関しては大丈夫な人がいます
とりあえず、最初の段階としてはフィードバックセンサーなどのセンサーの類は無しで行こうかと思います
電子回路設計は・・・・・・・その道離れて十数年という人ならいますが^^;
ロボット用のマイコンボードを少し探してみます
その道外れていても電子回路で勘が働くなら大丈夫です。
電流容量が大丈夫とか、駆動するモーターの選定とか、モータードライブICのチョイスとか、ノイズ対策とか、安全回路とか色々考えないと行けないのに分からない人で集まっても失礼ですが何も出来ないです。そもそもハンダ付けしたりユニバーサル基板に回路作ったりもしないと行けないでしょう。

こういうのを組み合わせて作ります。
「浅草ギ研 ロボット、特殊メイク材料販売のROBOTSFX.com」
http://www.robotsfx.com/index.html

【補足】
まぁ、マイコンの問題は沢山のCPUの種類があり、直接のIOレジスタの制御とか割り込み処理とか通常のPCでは行わないレベルの制御を考えなければいけないことです。OSを載せていないことも良くあります。コレの性でうまく扱えない人がいるので勉強は必要です。
多機能なマイコンをターゲットにするなら割り込みとか細かいレベルが分からないと話しにならないのでarduinoは検討から外したほうが良いかも知れません。
※ arduinoでは割り込みがライブラリでうまく隠蔽されています。それゆえ色々やろうとするとライブラリの制約が話を難しくする事があります。

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月25日(火) 20:34
by non
液体が入っている入れ物の重量によりますね。軽いという前提なら、2足歩行ロボット等で使われているデジタルサーボが
便利でしょう。片方のアームで5~6個あればよいでしょうか。もう少し重いものなら、安川電気などのモートマンなどを使うのでしょうね。
デジタルサーボで作るなら、コントロールボードを購入した方が簡単です。なくてもいいけどね。
例えば
http://kondo-robot.com/product/board.html

Re: 初めから勉強するには~マイコン編~

Posted: 2012年9月26日(水) 07:53
by 史上最悪のデスペナ
機械の方を何とかさせてからプログラミングに取り掛かろうと思います
それまでゲームの方に戻れるからある意味ラッキーですね

プログラミングしないといけなくなってからまた質問させていただくことがあるかもしれません

液体はかなり軽いという前提だと思います
コントロールボードを買うつもりみたいです。
実際のモーター制御とかはブラックボックスのままで行くんでしょうかね?まあ、プログラムするだけの私にはよくわかりませんが