講座資料と簡単な解説(01-10)

最終更新: 2012/08/28 08:54:34 [| ]  最終更新: 2012/08/28 08:54:34

第1回 ロボット・メカトロニクスの基礎

資料アーカイブ 20110118版


内容紹介

メカトロニクス
メカトロニクスの構成
ロボット、メカトロニクス分野の全体をおおざっぱに眺めます。

メカトロニクスは、「メカニクス」(機械工学)と「エレクトロニクス」(電子工学)から作られた言葉で、技術的にもまさに、電子制御された機械、を指します。 一時期は電子回路だけの制御も多くありましたが、最近はコンピュータ制御であることが一般的です。その背景には、コンピュータの高性能化、小型化、低コスト化によって、「コンピュータ制御のほうが安く簡単に高付加価値のものが作れる」ようになったことがあります。
ロボットは定義が曖昧ですが、技術的にはメカトロニクスの一部で、メカトロニクス開発ができれば、アイデア次第でロボット開発ができる、といっても過言ではありません。

メカトロニクスなシステムの構成要素は、

で構成されます。全体が一つになって、「メカとコンピュータの情報ループ」が構成されます。

これらを適宜設計開発して組み合わせれば、メカトロニクスな機器を作ることができるといえます。 実際、適切なメカをつくり、コンピュータと無理矢理にでもつないで、電気的に情報のループをつくれば、とりあえず動くものはできます。 ただ、各部分のつなぎ目を適当につくると、効率やコストの面でも、性能の面でもよくありません。 このつなぎ目をどう考えるか、そのためには、「隣のことを知る」ひいては「全体を知る」ことが不可欠と言えます。

本講座では、こういったことを中心に、玉乗りロボットを実例として、考慮すべき点なども含めた解説を行いました。


第2回 マイコンの初歩

資料アーカイブ 20110222版


内容紹介

コンピュータの仕組み
ロボットに使われるマイコンの例
メカトロニクスなシステムの重要要素である、制御用コンピュータに関する講義です。 とくに、製品に組み込まれる小型コンピュータである、組込マイコンに重点をおいています。

今回の講座は大きく3部構成です。

普段、いろいろな形で使っているコンピュータですが、制御に使う場合~メカトロなシステムに限らず、電子的なシステムも、また制御でなくとも~は、多少なりとも、コンピュータのハードウエアの構造を知る必要があります。
一つ目の理由は、コンピュータになにか、普通ではないものをつなぐ以上、そのつなぐことを考えるためです。
二つ目の理由は、パソコン用やWEB用のソフトウエアを使うときには、OS(オペレーティングシステム、基本ソフト)がハードウエアがどうなっているかを意識させないように隠している一方で、制御の場合はどうしても直接ハードと向き合ったプログラムが必要になります(ローレベルな、という表現をします)。
三つ目の理由は、マイコンの性能などを見る場合、ハードに直結した記述がたくさん出てきます。そのため、多少なりとも、知っておく必要があります。

そこで、コンピュータの構造をなるべく簡略化し、解説します。 動作と構造は、本来切っても切れないものなのですが、同じような動作のために、小さなコンピュータからパソコンクラスまで、構造がいろいろあるために、わけて考えます。 その延長で、マイコンがいかなるものかが見えてくるはずです。

最後に、実際に使っているマイコンの例を紹介するとともに、「これからマイコンを触ってみたい」という場合の、とっかかりのおすすめをします。




第3回 デジタルの基礎

資料アーカイブ 20110831版


内容紹介

デジタル回路の素子
加算回路
コンピュータを初めとする、さまざまな装置の動作の原理であるデジタルに関する講義です。 デジタルの基本となる原理、電気的な実装方法、様々なデジタル回路の例などを紹介し、基礎に重点を置きつつも、その先も少し覗くことを目指しました。

今回の講座は大きく3部構成です。

コンピュータ関連製品は当然のこと、アナログ時計やアナログテレビすら、デジタルな部分が含まれている場合も多く、デジタルにお世話にならない生活は難しいくらい、あふれています。 これらのシステムは、全てを理解するには困難なものばかりですが、その基礎となる部分は非常に少なく単純です。それを気合いと根性で積み上げたのが、いまのデジタルです。

原理を知らなくとも、使うことはできます。 しかし関連するものを「つくる」となったら、ある程度は把握しておいて損はありません。 とくに、回路そのものを作らなくとも、その制御を行う組込ソフトウエア開発においては当然知っておく必要がありますし、純粋なソフトウエアであっても、「デジタルの特性」を把握しておくことが、より効率のいい処理に繋がることもあります。

講義後に受講なされた方々の感想を頂いたところ、ソフト開発系の会社の方からは「なつかしい・思い出した」「久しぶりに意識した」といったご意見を頂きました。 ソフト開発系では新人研修では当然通ったところだと思います。
一方、これまで無縁だった方には少し難解だったようです。後半に実践例が多すぎたかもしれません。ただ、ルールそのものは単純で、そこから「目的に応じてどう積み上げていくか」がデジタルの基本で、AND/OR/NOTだけでいろいろなものができている、という感覚だけでもつかんでもらえればと思います。

話の中で、昔は真空管やリレーで計算機を作ったこともあった、という話をしましたが、関連資料がありました。
コンピュータ博物館:論文
ご参考まで。

簡易シミュレーション

今回、回路の動き方を説明するために、簡易的なロジック回路シミュレーションをつくりました。 以下、そのままWEBブラウザでお試しいただけますが、javascriptの互換性の関係で、どのブラウザでも動くかはわかりません。さしあたって、Firefox (5/6)とInternetExplore8では動作を確認しています。また、画面解像度は1024x768は必要です(場合によっては全画面表示をしてください)。




第4回 アナログ信号の基礎

資料アーカイブ 20110921版


内容紹介

周波数特性とは
ノイズ対策:ツイストペアと差動伝送
メカトロニクスなシステムでは、主にセンサ関係で必要になるアナログの扱いに関する講義です。 アナログ回路を設計するため、ではなく、手元にあるシステムを眺めるため、触るため、チェックするために必要な項目について、基礎的かつ即効性のある(あった)内容を雑多に並べています。

今回の講座は大きく3部構成です。

メカトロシステムを設計開発する上で、アナログ部分は一つの大きな課題です。
世の中の多くの現象がアナログであるため、少なくともセンサの周りだけはアナログの要素が残りがちです。近年ではデジタル出力のセンサも増えてきてはいますが、そのセンサにもアナログ的配慮が必要ですし、センサの特性はアナログ的発想で示されていることがよくあります。
加えて、デジタル信号であったとしても、周波数の高いデジタル信号の扱いにはアナログ的理解が必要な場合があることも指摘されています。
メカトロ設計を無難にするには、アナログ部分をなるべく少なくして、なるべくデジタルで行うことが楽をするコツですが、その残ったアナログ部分のための雑学です。

アナログを扱う上での最大の問題は、「電圧(電流)がそのまま値を表す」ということです。デジタルの場合は、「大きい/小さい」など極端な状態のみを使うため、多少電圧信号に変化があっても値そのものには影響が出ることはありません。ところが、アナログの場合は、多少の変化でもそれが値の変化に直接繋がります。 フィルタなど、その事後改善を図るための手段はありますが、完全な修復は無理で「いかに信号にゴミを混ぜずにすませるか」は重要な問題です。

今回は、メカトロの一部として、今後、センサなどの話をすることも念頭に、周波数特性(周波数応答)の解説も含めました。 数学的にも実験的にも、信号波形が、様々な周期・振幅の正弦波(+余弦波)の和で表せることが確認されています。そこで、センサや回路の入出力の特性を示すために、なんらかの具体的な波形を用いた結果ではなく、様々な周波数の正弦波を入力したときの応答で表すことにしています。これを一式にした物が周波数特性・周波数応答と呼ばれる物で、これを見ると、ある周波数における 1:増幅率(センサの場合は感度) 2:位相(信号の進み遅れ) を知ることができます。具体的には、何Hzくらいまで信頼して使える回路なのか、信号がどのくらい遅れる可能性があるのか(遅れは計測制御に悪影響が出ることがある)などを知ることができます。 一転して、信号の扱いの話では、主にノイズと計測を話題にしました。
ノイズ対策は、それだけで解説書が何冊も出来るような、それでいて簡単には解決策の見つからない(泥沼な)ものですが、「少なくともこれくらいは試してみるとよいのでは」という手段があります。実際、身の回りの装置類では、これらの対策が大抵取られています。その手段が使われている理由と目的、実際に自分の手元の回路にも使いうる、ということを知ることがスタートだと考えます。
一方、回路に何かあった場合にはそのチェックのために、テスタやオシロスコープなどを当てて信号を調べます。この「測定器をつなぐ」ということが、回路にとって悪さをすることがあります。また、測定器に表示されているものが、現実の波形とは異なることもよくあります。十分すぎるほど性能の高い測定器(でも高価)では起きない問題でも、手近な測定器では当たり前におこる、そんな測定トラブル事例も紹介しました。


第5回 アナログ信号のコンピュータへの取り込み

資料アーカイブ 20111018版


内容紹介

アナログ→デジタルの構成
サンプリング
メカトロ・計測で対象とする現象の多く(温度、明るさ、速さなど)は連続量であるアナログです。一方で、その処理を行うコンピュータはデジタルです。 そのため、どこかの段階で、アナログ値をデジタルに変換する必要があります。 今回は、その変換の過程で把握しておいた方がよいことをいくつか取り上げました。

このアナログをデジタルに変換すること、アナログデジタル変換(AD変換)を使うに当たっては、主にハード面への理解と、そのハードを使うためのソフト的理解が必要です。今回のセミナーでは

を中心にまとめました。

AD変換そのものの機能は非常に単純で、一言で言えば「入力されたアナログ値に比例したデジタル値を出力する」ものです(一般的には比例とは限らないが、直線的な関係)。 そのため、コンピュータにAD変換器をつなぎ(または内蔵)、適切に変換の指示をおくれば、そのまま、センサなどのアナログ値に対応したデジタル値が得られます。
ただ、実際に使おうとすると、大きく三つの点で、慣れないと面倒なことがあります。

一つ目は、選定などの際にみるデータシート(説明書)の項目の多さです。AD変換の性能を表す数値は非常にたくさんあり、まずはどの値が重要かを知り、それを見分けることが要求されます。 主なものとしては、分解能(ビット数)、変換速度(時間/周波数)、チャンネル数があります。 そのほかにも、アナログ的特性、誤差と言った項目も様々並んでいます。

二つ目はサンプリング定理とよばれる、時間変化するデータを連続して取り込む際に留意すべき制限です。サンプリングとはデータの取り込みを表す言葉で、AD変換に限って言えば、AD変換すること、とほぼ同義です。 1秒間に何回サンプリングするかをサンプリング周波数といいますが、このサンプリング周波数の1/2の周波数(の正弦波)までしか入力してはならない、というルールです。逆に、ある周波数の信号を取り込もうと思ったら、その2倍より速い速度で取り込まなければなりません。 現実には少なくとも4倍、なるべく10倍は必要とされています(特に正弦波以外で波形の違いなどを見たい場合はより高いサンプリング周波数が必要)。
このルールを無視すると、「データがとれない」ではなく「偽のデータがとれる」ため、注意が必要です。これはデジタルオシロスコープなどの「AD変換を使っている装置」でも起きる場合があります。また、テレビの自動車CMでホイールが止まったり、逆回転して見えることがありますが、これもこのサンプリング定理によります。

三つ目は多チャンネルADを使う場合の注意です。AD変換は複数の入力をもつものがよくあります。たとえば「16ビット8チャンネルAD」などと表現されます。 複数の入力をつなぐ場合などには便利なのですが、多チャンネルの変換をするばあいに速度が落ちる場合が多く、かつ、同時にサンプリングできないものも多いため、選定には注意が必要です。

これらの点について、それぞれ紹介しました。

セミナーで併用した資料など

※データシートは本ページ利用者の利便性を考慮して、各社WEBより頂いています。必要部分のみを引用すべきですが、保護されていて切り抜きもできないので、丸ごと置きます。


第6回 センサの基礎

資料アーカイブ 20111129版


内容紹介

センサの役割
センサの種類、接触式と非接触式(写真はWikipediaより引用)
メカトロニクスに必要な不可欠な要素として計測があります。
センサはその計測の根幹をなす部品の一つで、被測定量(測定対象となる量、物理的量、化学的状態等)を電気的な変化に変換します。

被測定量としては、

などを測定することが出来ます。

一方、変換されたあとの電気的変化は、

などの形態となります。

また、同じ対象を測定するのでも、接触式のセンサや非接触のセンサ、受動的(パッシブ、被測定量を受け取るだけ)なセンサや能動的(アクティブ、対象に何らかの働きかけをしてその反応を見る)などの複数の方法がある場合があります。
接触式のセンサは一般に何らかの影響を対象に与えてしまいますが、非接触は影響をほとんど与えずに測定できます(が、一般的に高価だったり性能が得にくかったり)。
能動型のセンサは、受動型では測定できない情報も得ることができますが、センサどうしの干渉の恐れや、受動型にはない環境制限がある場合もあります。
さらに、センサは、変換原理の部分だけをもつセンサ部品(デバイス)、それとセットになる処理回路まで含めたモジュール品やセンサIC、箱に入れて情報処理までこなすセンサ装置などがあります(装置が使いやすい一方で、高価だったり大きかったり重かったりという問題があることも)。

センサを使う場合には、なにを測りたいのか、どういう性能が必要か、どういう出力が望ましいか、などをもとに選定を行うと供に、それをどうやってコンピュータ内のデジタル情報にするかまでを一連として考える必要があります。

さて、センサを選ぶには、センサの特性を知る必要があります。
実際に買ってみて、試して見るのが一番ですが、買ってみるにしても予め調べておく必要があります。 そのためには、センサの特性をカタログ、データシートで確認する必要があります。
センサの特性には、精度はもちろんのこと、ヒステリシスや応答性といった時間変化する値を測定する場合に気をつける特性があります。 さらに、多くのセンサは(温度センサでなくとも)温度変化で出力の特性が変化します。 場合によっては補正が必要ですし、温度を一定に保つ工夫がいる場合もあります。
センサを選定する上では、こういった特徴がある、ということは頭の片隅に置いておいた方がいいでしょう。

さて、目的の特性をもつセンサが無かったとしたら。
一般的には、より性能の低いセンサで制御が耐えられるかを検討することになるでしょう。 大きな余裕があれば、センサ開発から始めるのも可能性の一つです。
加えて、センサは「合成」できる場合があります。

探してきたセンサで「全て特性が完璧ではないけど、AのセンサとBのセンサのいいとこ取りをすれば目的を満たす」という場合には、信号処理で対処することができる場合があります。
たとえば、

などができます。また、速度を測定したいときに、位置を測定して微分したり、加速度を測定して積分したり、異なる測定値から変換することが出来る場合もあります。
そのためには信号処理の方法も知る必要がありますが、その基礎は第7回でお話しします。

これらの点について、それぞれ紹介しました。

セミナーで併用した資料など

※データシートは本ページ利用者の利便性を考慮して、各社WEBより頂いています。必要部分のみを引用すべきですが、保護されていて切り抜きもできないので、丸ごと置きます。


第7回 センサ信号の処理の基礎

資料アーカイブ 20111220版


内容紹介

センサの信号処理の役割
信号処理の実例
センサを付ければ計測・制御ができる、わけではありません。 センサの信号を回路で適切に変換し、A/D変換してコンピュータに取り込んで得られたものは、まだ、「ただのデジタル数値」です。これを情報とするために、信号の処理が必要になります。

もっとも簡単な処理としては、得たデジタル値を単に被測定量に変換する処理です。 比例関係がはっきりしている場合は、定数をかけたり割ったり(普通は割らないで済むように逆数をかけます)、直線的な特性(一次関数)の場合も簡単な計算で戻せます。
より複雑な場合は、曲線を使ったり、予め用意しておいた変換表(テーブル)を用いて変換します。

信号処理は様々な種類があり、また、その実装方法も様々なため、今回は代表的な物として、移動平均、メディアン(中央値、中間値、メジアン)フィルタ、1次IIRローパスフィルタを波形を交えて紹介しました(そのときのExcelファイルは以下に)。
フィルタにはFIRとIIR型があり、かつ、FIRの場合は未来の値を使うかどうかと言う区別があります(一般にはFIRは未来の値を使う設計をするので、それを全部遅らせる)。 移動平均フィルタはFIRの代表例として、もう一つの1次ローパスフィルタはIIRの代表例として挙げました。いずれもローパス特性を持ちますが、今回の実演の範囲を超えた(Excelではできないような)ところで、両者の演算量や特性には大きな違いが出てきます。 一般に、1次ローパスの方が便利ですが、(1)周波数による遅れを均一化したい(FIRの特性) (2)特定の周波数で強力な除去をしたい、という場合には移動平均は手軽です。

メディアンフィルタは、画像処理では以前からよく使われていたフィルタで、突発的なノイズ(スパイクノイズ)を除去する能力に優れます。その一方で、ローパス系のフィルタだと信号の変化が急なところでなまってしまうところを、エッジを残したまま通す、という特徴があります。 火花が出るような状況(スイッチやリレーや直流モータのブラシなど)ではスパイクが入りやすく、その処置に便利です。
メディアンフィルタは「大きい順に並べ替える」という処理があるため、コンピュータの処理量が多く、能力VS演算量というジレンマがありました。が、いまはコンピュータが十分早いので、必要なら使っても問題ないと思います。

信号中にある特定周波数を抽出する処理も、実用性の高い手法です。
揺れている装置の固有の振動を探したり、周期性はあるけど微弱な信号を検出するといった用途に効果的です。いまでは、オシロスコープなどにFFT機能が標準で搭載され、手軽になりましたが、自分で測定した信号波形に対しても、簡単な処理で周波数分析はできます。

最後に処理の実例を挙げました。
一つはロボットの姿勢センサの処理です。ロボットには角速度ジャイロ(レートジャイロ)と呼ばれる「回転する速さ=倒れる速さ」を測定するためのセンサと、重力の方向を検出するための加速度センサを用いることが一般的です。 これはジャイロは積分しないと傾斜角度が得られないのに、積分には値がずれていく危険性があること、加速度センサは重力の方向だけではなく、自分自身の揺れまで拾ってしまうこと、というお互い短所があるため、ジャイロの反応の良さと加速度センサの長い目で見た安定性を併用するためです。 この組み合わせを簡単に実現する方法を例示しました。
また、音楽を周波数分析する実験例を挙げました。 音楽における音高は周波数で、周波数分析によって確認できますが、それと同時に音の出るタイミングが重要です。周波数分析では一般に、周波数の細かさ(分解能)と時間の細かさは両立しません。 そこで、周波数によって周波数を優先するか、時間を優先するかを変えられるウェーブレット変換の考え方を導入して処理をしました。

これらの点について、それぞれ紹介しました。

セミナーで併用した資料など