質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
IoT

IoT(Internet of Things)とは、インターネットがコンピュータなどの情報・通信機器のネットワークだけでなく、世の中のある様々なモノに接続されて自動認識・自動制御・遠隔計測などの能力を備えることです。「モノのインターネット」と一般的にいわれます。

Q&A

解決済

1回答

3178閲覧

IoT、AIの仕組みについて

chapp

総合スコア233

IoT

IoT(Internet of Things)とは、インターネットがコンピュータなどの情報・通信機器のネットワークだけでなく、世の中のある様々なモノに接続されて自動認識・自動制御・遠隔計測などの能力を備えることです。「モノのインターネット」と一般的にいわれます。

1グッド

2クリップ

投稿2015/12/31 05:49

お世話になってます。表題の「IoT、AIの構成」について、ご存知の方がいらしたら教えてください。

私のプログラム暦は、PHPとMySQLを6-7年程度の者で、プログラムを学ぶ切っ掛けとなったのも、プログラマーになりたい!というものでなく、ホームページの延長線で「会員サイトを作りたい」というところがスタートだったので、全て独学だったこともあり、その目的(会員サイト)を手にするためだけの理解(ハード的な構成も含め)しか持ち合わせておりません。

さて、以下は、あるサイトからの引用ですが、IoT、AIなどが注目されている現在、特に珍しくもない内容ですが、ここの仕組みやハード構成などが見えてこず、興味があっても何から学べばいいのか分からず、こちらに投稿した次第です。

~~~~~~~~~~~~~
電気自動車にAIを組み込むTesla Motors

Tesla Motorsといえば、高性能でスポーティな電気自動車のメーカーとして広く認知されている。自動(自律)運転に向けても先駆的に取り組んでいる。同社のシステムは、GPS(Gobal Positioning System:全地球測位システム)と連動する全車両からのリアルタイムにデータとフィードバックを受信し、学習に学習を重ねて、日々その機能を高めていく。車両には前方にレーダーとカメラ、車の周囲には16フィートを360°検知できる12個の超音波センサーが装備されている。

個々の車両は、Wi-Fi接続によりソフトウェアをアップデートし、機能を拡充させていく。ソフトウェアの更新はおおむね週1回の頻度だ。ディープラーニング技術を活用して、利用者が運転すればするほど知見が蓄積され学習し、その結果として車両自体が賢くなっていくという。すでに自宅の敷地内にある駐車場から玄関まで自動的に走行し、オーナーを迎え入れる機能まで実装している。
~~~~~~~~~~~~~~~

上の文章から例にとると、
Wifi接続により通信を行っているのは想像は付きます。
データを収集し、ビックデータの中から分析をし、個々のソフトウエアをアップデートしていくことも理解は出来ます。

ここで分からないのが(お恥ずかしいですが)、

・Wifi接続ってどんな機器をそろえる必要があるの?

・Wifi接続って個人が揃える機器で通信を行うことが出来るの?

・Wifiってプロバイダーとの契約が必要?

・個々の車両に取り付ける機器はどのようなものなのか?ウェブサイトを例に挙げるなら、車両につけるのはクライアントマシンになると思う。PCであればwindowsやMacなど、OSが組み込まれたものが売られているが、今回の例を含め、IoTの実現に向け設置されているクライアントマシンにあたるものは、どういったものなのか?

・このクライアントマシンに組み込みソフトウェアは、どのような言語になるのか?

・ウェブサーバー側で、データを分析するためのソフトウェアは、クライアントマシン側のプログラムと愛称はあるのか?もしくは適切なものがあるのか?

こういったところが想像の域を脱せないままでいる次第です。

恐れ入りますが、とても興味のある分野なのでお教えいただけると幸いです。
年末年始のお忙しい中恐縮ですが、宜しくお願い申し上げます。

afroscript👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

chappさんのご質問は非常に広範囲かつ抽象的なので、このような質問サイトの回答欄でズバリ回答するのは非常に困難ですね…

しかし、理解を深める上でいくらか役立つかもしれない点があるので、ご参考になればと思い回答します。

###1. Wi-Fiについて
Wi-Fiに関するご質問については、単純に以下のような言葉の意味を再確認すれば自ずと解決すると思います。Wikipediaからの引用で恐縮ですが…

Wi-Fiとは】

無線LANの規格のひとつ。

Local Area Networkとは】

広くても一施設内程度の規模で用いられるコンピュータネットワークのこと。

インターネットとは】

インターネット・プロトコル技術を利用してコンピュータネットワーク間の相互接続を行うことにより実現されるネットワークのことである。

インターネットサービスプロバイダとは】

インターネットへの接続を提供する組織のことである。プロバイダやISPなどと略して呼ばれることが多い。日本では電気通信事業者の一つとして位置づけられている。日本語では役務からインターネット接続事業者(略して接続事業者)と訳されることがある。

まず、Wi-FiとはLANに無線で接続するための技術で、プロバイダとはインターネット接続サービスを提供する事業者であるという点をご確認ください。

つまり、Wi-Fi自体はLANに接続するためのものであり、LANは「一施設」つまり自宅の中などのような限定された範囲で使用されるローカルなネットワーク(=個人的なもの)なので、利用に際してどこかの事業者と契約する必要性はありません。

ついでにちょっと補足すると、インターネットのインターとは「中、〜間、相互」を意味します。インターチェンジが複数の高速道路の間を繋ぎ乗り換えるための道路であるように、インターネットは複数のネットワーク(世界中に点在するLANを含む)を相互に接続した世界的なネットワークのことを指します。

そして、そのインターネットへは、混乱を避けるために資格を持った事業者しか接続できない決まりになっているので、インターネットを利用したければ、資格を持った事業者から有償で接続サービスを受ける必要が有るということです。

Wi-Fiは、スマホを自宅内や商業施設内でWi-Fiモードで接続する際にもあまり意識せずに使用しているような普及した技術であり、必要な機器も個人レベルで簡単に購入できます。
親機(インターネットに接続する側)は無線LANアクセスポイント、子機(クライアント側)は無線LANアダプタなどと呼ばれますので、それをキーワードに検索してみれば色々と情報が得られると思います。

###2. IoTについて
まずはIoTという言葉自体の意味を再確認してください。

モノのインターネットを指し、全てのモノがネットワークを介して繋がり、モノ同士が人の操作・入力を介さず、自律的に最適な制御が行われることを意味します

つまり、Iotとは非常に幅広い概念であり、クライアント側のマシンがどのようなものであるとか、どんな言語が使用されるとかのような具体的な回答は出しようがありません。
インターネットで人を介さずに直接接続されるシステムは全てIoTなので、何でも含まれる可能性があります。

###3. 組み込み系システムについて
次に、組み込みシステムとはどのようなものかを確認してみてください。
いまや100円ショップで売っているような簡単な装置でさえ電子制御になっており、電子装置の多くがマイクロプロセッサを内蔵しています。(こちらも参照)

組み込みシステムは,特定の用途に向けて設計されたものです.つまり,汎用のシステム以外のマイクロプロセッサ搭載機器は,すべて組み込みシステムといえます.

マイクロプロセッサを活用する利点
● 開発効率が上がる
● 開発時の仕様の変更に柔軟に対応できる
● 出荷後でも機能のアップグレードができる
● 不具合の修正に柔軟に対応できる

このような目的でマイクロプロセッサが多用されていますので、自動車を例に上げれば、一台の車に既に数百〜千個ものコンピュータが搭載されています。
そのうちのどれがどんな目的でインターネットに接続されるかは分かりませんので、具体的な回答が難しいという次第です。

組み込み系の場合、搭載されているメモリ容量や実行速度上の制約がとても大きいです。

ですので、特に制御系システム(エンジンなどの動作をコントロールするシステム)であれば本格的なOSは搭載せず、アセンブラ言語でゴリゴリとプログラムを書いている場合が多いです。
最近では制御系システムも大規模・複雑化が著しいので、C言語が多く用いられています。
OSを搭載する場合も組み込み向けリアルタイムOSという特殊なOSが使用されます。

一方、オーディオシステムの制御など、より人間寄りの使い勝手に関わる分野では、JavaやC++なども多く使用されていると思います。

しかしながら、特定の分野に特化した特殊な言語も多数存在しますし、逆に運転者がインターネットからの情報提供を受けるための装置はもはやPCと変わらないので、その開発スタイルや使用言語も殆ど同じだと思います。

###4. システム間の相性について
システムであれば、当然、相性というものはあると思います。しかし、IoTの場合はシステム同士が直結している訳ではなくインターネット経由なので、システム同士の相互作用はほぼ皆無であり、システム間の相性というよりは処理対象のデータの性質によるところが大きいと思います。

つまり、リアルタイム性を求められるのであればデータ処理に特化した処理速度優先の言語システム、高度に構造化されたデータの処理であれば複雑なデータ構造を扱いやすい言語システム、ビッグデータを扱う必要があるなら、たとえばHadoopのようなシステムなどが適してのは明らかです。

ちなみに、『ウェブサーバー側』でのデータ処理に言及されていますが、ウェブとはWorld Wide Webの略であり、インターネット上で提供されるハイパーテキストシステムのことです。これはいわゆるホームページから、リンクを辿って目的の情報を次々と閲覧するためのシステムであり、人間が利用する前提で設計されているので、IoTの世界ではあまり広くは利用されていないと思います。

また、通信に利用されるプロトコル(規約)も、Webの場合は一般にHttpを利用しますが、IoTの場合はより適切なプロトコルを使用します。

IoTでの利用を期待されているプロトコルについて

以上、幾らかでもご参考になれば幸いです。

投稿2015/12/31 11:44

pi-chan

総合スコア5936

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chapp

2015/12/31 12:56

pi-chanさん こんばんは。お忙しい中、またお疲れの中、ご親切な回答をありがとうございます。 抽象的な質問にも拘らず、ご丁寧な回答に感謝です。 これまで偏ったプログラム制作にしか携わっていないので、どれもありがたい情報であると考えてます。特に「組み込み系システム」というキーワードも始めて耳にしました。 まだ具体的に作りたいモノがないので、どれも抽象的な質問になってしまいましたが、pi-chanさんからの情報を参考にして、知識を広げる切っ掛けにしたいと思います。 ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問