工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

KINECTとRASPBERRYPIを使用したSONBIロボットの人間検出

A。目的

Sonbi内にRaspberrypiのソフトウェアシステムを構築し、
MicrosoftKinectをRaspberrypiに統合して、
Kinectの前に立っているときに
Sonbiロボットと対話できるようにします。ソンビロボットが腕を振って人々に向けます。


B。ハードウェアシステム


Sonbiのチェストシャーシには、次の基本的なハードウェアアイテムが搭載されています。
•Raspberry Pi w / 8GB Flash
•PololuMaestro 24
•MicrosoftKinect
•ATX500ワットPS
•その他の部品(プロトボード、ワイヤー、機械式)


ラズベリーパイ:

•700MHzARM1176JZF-Sコアプロセッサ
•512MB SDRAM
•microUSB(5V)経由で給電
•イーサネット、HDMI、および周辺機器用の2つのUSBポート
•Raspbian OS
•広く使用されている、たくさんのドキュメント!

ポロルマエストロ24


•24チャンネル
•最大333Hzのパルスレート
•最大8KBのスクリプトサイズ
•チャンネルあたり最大1.5アンペア
•2つの電源オプションUSB /電源ヘッダー
•スクリプトまたはネイティブAPIのサポート

ラズベリーパイとポロルのインターフェース


•簡単な配線
–電源、Gnd、Tx-Rx、およびRx-Tx
•TTLシリアルポート
–デフォルトでは、Piはコンソールの入出力にシリアルポートを使用します
– / etc / inittabと/boot/cmdline.txtを編集して、デフォルトを変更し、
使用できるシリアルポートを解放します
•すばらしいチュートリアル:
http://shahmirj.com/blog / raspberry-pi-and-pololu-servocontroller-using-c
Microsoft Kinect:
•1280×960の解像度で3つのチャネルデータを保存するRGBカメラ。
これにより、カラー画像のキャプチャが可能になります。
•赤外線(IR)エミッターとIR深度センサー。エミッターは
赤外線ビームを放射し、深度センサーは
センサーに反射されたIRビームを読み取ります。反射されたビームは
物体とセンサーの間の距離を測定する
深度情報に変換されます。これにより、
奥行きのある画像のキャプチャが可能になります。
•サウンドをキャプチャするための4つのマイクを含む
マルチアレイマイク。マイクは4つあるので、
音声を録音したり、
音源の位置や音声の方向を見つけたりすることができます。
•3軸加速度計は次のように構成されています。 2Gの範囲。ここで、Gは
重力による加速度です。
加速度計を使用して、
Kinect

の現在の向きを判断することができます。

垂直傾斜角度:27度
•フレームレート:30 fps

C.KinectとラズベリーPIの統合


以下は、Kinectを
RaspberryPiと統合するために実行される手順です。


Microsoft Kinectとそのセンサードライバーをラズベリーパイに接続する:


このプロセスは、プロジェクトの面倒な部分の1つです。これは、KinectがWindowsで動作し、unixベースのオペレーティングシステムで動作するようにするには、それに関連するすべてのライブラリとドライバーを手動でインストールする必要があるためです。大変で、問題の解決には多くの工数がかかります。実行した手順、ライブラリ、およびインストールされているパッケージのリストは、ソフトウェアシステムの構築のセクションに記載されています。

Kinectの全機能を使用する:


深度センサー、IRセンサー、マイク、モーターなどのKinectのすべての機能を使用してカメラを傾けるには、これを実行できるライブラリが必要です。 RPIにはデフォルトでOpenCVとOpenGL / GLESがマウントされていますが、これらはまだ深度センサーとモーターをサポートしていないため、OpenNIまたはLibfreenectパッケージをインストールする必要があります。どちらかで十分ですが、両方をインストールすることにしました。テストして理解するために、OpenNIフォルダーとLibfreenectフォルダーで利用できるサンプルプログラムを実行できます。私はすでにバイナリをコンパイルして構築しました。 「bin」フォルダに移動して、
./「サンプルプログラム」でサンプルを実行するだけで実行できます。


D。ソフトウェアシステムの構築

Libfreenect:
Libfreenectは、MicrosoftKinectのユーザースペースドライバーです。
Linuxサポート
•RGBおよび深度画像
•モーター
•加速度計
•LED
オーディオは進行中の作業です
libfreenectをビルドするには、
•libusb> =1.0.13
•CMake> =2.6
•python ==2. *(BUILD_AUDIOまたはBUILD_PYTHONの場合のみ)
が必要です。例として、次のものが必要です。
•OpenGL(OSXに含まれています)
•glut(OSXに含まれています)
•pthreads-win32(Windows)
git clone https:/ /github.com/OpenKinect/libfreenect cd libfreenect mkdir build cd
build cmake -L .. make# make がない場合 またはカラー出力を望まない#
cmake –build

sudo apt-get install git-core cmake pkg-config build-essential libusb-1.0-0-dev
sudo adduser $ USER video sudo adduser $ USER plugindev#必要ですか? #例を作成している場合のみ:sudo apt-get install libglut3-dev libxmu-dev libxi-dev

ラッパー:


さまざまな言語へのインターフェースは、wrappers /で提供されます。ラッパーは
APIが安定しているか最新であることが保証されていません。
•C(同期APIを使用)
•C ++
•C#
•python
•ruby
•actionscript
•Java(JNA)


OpenNI:


要件:
1)GCC 4.x
From:http://gcc.gnu.org/releases.html
またはapt経由:sudo apt-get install g ++
2)Python 2.6 + / 3.x
From:http://www.python.org/download/
またはapt経由:sudo apt-get install python
3) LibUSB 1.0.x
From:http://sourceforge.net/projects/libusb/files/libusb-1.0/
またはapt経由:sudo apt-get install libusb-1.0-0-dev
4)FreeGLUT3
From:http://freeglut.sourceforge.net/index.php#download
またはapt経由:sudo apt-get install freeglut3-dev
5)JDK 6.0
From:
http://www.oracle.com/technetwork/java/javase/downloads/jdk6u32-downloads-1594644.html
またはapt経由:sudo add-apt-repository“ deb

オプション要件(ドキュメントを作成するため):
1)Doxygen
From:
http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc
またはapt経由:sudo apt-get install doxygen
2)GraphViz
From:http://www.graphviz.org/Download_linux_ubuntu.php
またはapt経由:sudo apt-get installgraphviz


OpenNIの構築:


1)ディレクトリ「Platform / Linux / CreateRedist」に移動します。
スクリプト「./RedistMaker」を実行します。
これにより、すべてがコンパイルされ、
「Platform / Linux / Redist」ディレクトリ。また、
「Platform / Linux / CreateRedist / Final」ディレクトリにディストリビューションを作成します。
2)「Platform / Linux / Redist」ディレクトリに移動します。
スクリプトを実行します。 「sudo./install.sh」(rootとして実行する必要があります)
インストールスクリプトは、キーファイルを次の場所にコピーします。
Libs into:/ usr / lib
Bins into:/ usr / bin
インクルード:/ usr / include / ni
構成ファイル:/ var / lib / ni
Monoラッパーをビルドする場合は、「make
」も実行します。 mono_wrapper」と「makemono_samples」


E。個人の検出とSO​​NBIの行動:


RaspberryPIはプログラムbootscript_sonbi.shを実行します
「bootscript_sonbi.sh」はコマンド「pythonfacedetect.py
–cascade =face.xml0」を実行します
必要になりますこのトレーニング済みの顔ファイルをダウンロードするには:
http://stevenhickson-code.googlecode.com/svn/trunk/AUI/Imaging/face.xml
facedetect.pyは顔検出アルゴリズムを実行し、
「Sonbi」実行可能ファイル。Sonbiバイナリは、
サーボモーターを動作させる役割を果たします。プロセスのフローチャートは以下のとおりです。

出典:KINECTとRASPBERRYPIを使用したSONBIROBOT HUMAN DETECTION


製造プロセス

  1. NodeMCUとRaspberryPi 3 B +間のMQTT通信
  2. LabVIEWを使用したRaspberryPiの温度プロファイル
  3. ラズベリーを使用した24Vサーモスタットイベント(オプトカプラー+ラズベリーパイ)のログとグラフ
  4. PythonとRaspberryPiの温度センサー
  5. RaspberryPiを使用した天気のリモートモニタリング
  6. Node-REDを使用してBlynkへのSensorTag
  7. RaspberryPiを使用したモーションセンサー
  8. ラズベリーパイ温度および光センサー
  9. RaspberryPiとTwilioを使用した音声およびSMS対応の光センサー
  10. ラズベリーパイセンサーとアクチュエーター制御
  11. LIRCなしでRaspberryPiでIRRemoteを使用する