いや〜〜、気持ちいいです。
Raspberry Piに、インターネット経由でmac proからアクセスしています。
Macから、sshでRaspberry Piに入っています。
Macの画面とディスプレーは、Mac横のRaspberry Pi の /home/pi を ls -al した結果。
いや〜、気持ちいい(^^)v
Peace!!
ロボット使ってトマト作れば楽だなぁ...やってみっか!
農業ロボット開発記録
日本中で100台以上動かしちゃった(^^)/
I'm developing robots that do tomato harvesting, settled planting ,,,,and many tasks.
The goal of production cost of robot is $2,000 per unit.
Because it is necessary a lot of robots, in order to innovate the farming.
I use Raspberry Pi as robot controller to develop low cost robots.
TOMATO FARM website -> CLICK!
2015年8月26日水曜日
Raspberry Piで、L-03Dを使ってOCN ONEに接続するYo!
Raspberry Piで、ルータ作りたいのですが、その前に
L-03DにOCNの格安SIMを挿入して、Raspberry Piからダイアルアップ接続する。
$ sudo apt-get install usb-modeswtich
$ sudo apt-get install wvdial
$ sudo vi /dev/wvdial.conf
お味噌は、Init2 = ATH
これが無いと、L-03Dでは、通信できない。Yo!!
$ sudo wvdial
やめる時は、Ctrl-C
$ ifconfig ppp0
L-03DにOCNの格安SIMを挿入して、Raspberry Piからダイアルアップ接続する。
$ sudo apt-get install usb-modeswtich
$ sudo apt-get install wvdial
$ sudo vi /dev/wvdial.conf
[Dialer Defaults]
Init1 = ATZ
Init2 = ATH
Init3 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Dial Attempts = 3
Stupid Mode = 1
Modem Type = Analog Modem
Dial Command = ATD
Stupid Mode = yes
Baud = 460800
New PPPD = yes
APN = lte-d.ocn.ne.jp
Modem = /dev/ttyUSB2
ISDN = 0
Phone = *99***1#
Password = <password>
Username = <username>
Carrier Check = no
Remote Name = CHAP
お味噌は、Init2 = ATH
これが無いと、L-03Dでは、通信できない。Yo!!
$ sudo wvdial
--> WvDial: Internet dialer version 1.61
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATH
ATH
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Modem initialized.
--> Sending: ATD*99***1#
--> Waiting for carrier.
ATD*99***1#
CONNECT
--> Carrier detected. Starting PPP immediately.
--> Starting pppd at Wed Aug 26 01:49:48 2015
--> Pid of pppd: 2402
--> Using interface ppp0
--> local IP address 153.155.245.13
--> remote IP address 10.64.64.64
--> primary DNS address 222.146.35.1
--> secondary DNS address 221.184.25.1
やめる時は、Ctrl-C
$ ifconfig ppp0
ppp0 Link encap:Point-to-Point Protocol
inet addr:153.251.24.70 P-t-P:10.64.64.64 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:23 errors:0 dropped:0 overruns:0 frame:0
TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:1430 (1.3 KiB) TX bytes:1469 (1.4 KiB)
これで、OK
ping で確認してね。(^^)
Peace!!
2015年8月24日月曜日
A installation of version 4.8 gcc and g++ on Raspberry Pi2
Raspberry Pi 2のCPU coreはCortex-A7ベース。
NEONというSIMD命令が使用できるようになっている。
其のためには、version 4.8 のgcc, g++が必要となる。
現時点では、4.6
そのインストールと置換
$ sudo apt-get install gcc-4.8 g++-4.8
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 20
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50
Peace!!
NEONというSIMD命令が使用できるようになっている。
其のためには、version 4.8 のgcc, g++が必要となる。
現時点では、4.6
そのインストールと置換
$ sudo apt-get install gcc-4.8 g++-4.8
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 20
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50
Peace!!
Install OpenCV3 on Raspberry Pi2
次に、Raspberry Pi2に、OpenCV3をインスールします。
1.事前準備
どーんと!!!
$ sudo apt-get -y install build-essential cmake cmake-qt-gui pkg-config libpng12-0 libpng12-dev libpng++-dev libpng3 libpnglite-dev zlib1g-dbg zlib1g zlib1g-dev pngtools libtiff4-dev libtiff4 libtiffxx0c2 libtiff-tools
$ sudo apt-get -y install libjpeg8 libjpeg8-dev libjpeg8-dbg libjpeg-progs ffmpeg libavcodec-dev libavcodec53 libavformat53 libavformat-dev libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10-dev libxine1-ffmpeg libxine-dev libxine1-bin libunicap2 libunicap2-dev libdc1394-22-dev libdc1394-22 libdc1394-utils swig libv4l-0 libv4l-dev python-numpy libpython2.6 python-dev python2.6-dev libgtk2.0-dev pkg-config
$ sudo apt-get install libswscale-dev
2.Buildの準備
$ wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/3.0.0/opencv-3.0.0.zip
$ unzip opencv-3.0.0.zip
$ cd opencv-3.0.0
$ mkdir build
$ cd build
ここからが、お味噌
Raspberry Piは、armv7です。
このまま、ビルドするとarmv6のコードになります。
もっと良い、方法があると思うけど、さくっと片付けたいので、、、
まずは、コンパイラーを4.8にします。
$ sudo apt-get install gcc-4.8 g++-4.8
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 20
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50
で、armv7を指定して実行すると、、、
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D ENABLE_VFPV3=ON -D ENABLE_NEON=ON -D BUILD_DOCS=OFF -D BUILD_TESTS=off -D BUILD_PERF_TESTS=OFF -D BUILD_TBB=ON -D BUILD_opencv_apps=OFF -D BUILD_opencv_gpu=OFF -D WITH_OPENCL=off -D WITH_1394=off -D WITH_CUDA=OFF -D WITH_CUFFT=OFF -D WITH_GIGEAPI=OFF -D WITH_OPENCLAMDBLAS=off -D WITH_OPENCLAMDFFT=off -D WITH_TBB=ON -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON ..
これは、失敗になります。こんなエラーがでます。
../../lib/libopencv_imgproc.so.3.0.0: undefined reference to `tbb::task_group_context::cancel_group_execution()'
で、 armv6で当面します。
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON
$ make -j 4
$ sudo make install
$ sudo ldconfig
$ cd bin
$ ./cpp-example-facedetect --cascade="../../data/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 ../../samples/data/lena.jpg
で、makeは、1時間位かかります。
Peace!!
----------------------------------------------------
これは、Raspberry Pi2用 メモ!!
-Wall -mfpu=neon-vfpv4 -mfloat-abi=hard -march=armv7-a
g++ tesp.cpp -o test -L/path/to/the/relevant/library/ -lnameoflib
where nameoflib would be eg. tbb if the actual shared library is named libtbb.so
1.事前準備
どーんと!!!
$ sudo apt-get -y install build-essential cmake cmake-qt-gui pkg-config libpng12-0 libpng12-dev libpng++-dev libpng3 libpnglite-dev zlib1g-dbg zlib1g zlib1g-dev pngtools libtiff4-dev libtiff4 libtiffxx0c2 libtiff-tools
$ sudo apt-get -y install libjpeg8 libjpeg8-dev libjpeg8-dbg libjpeg-progs ffmpeg libavcodec-dev libavcodec53 libavformat53 libavformat-dev libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10-dev libxine1-ffmpeg libxine-dev libxine1-bin libunicap2 libunicap2-dev libdc1394-22-dev libdc1394-22 libdc1394-utils swig libv4l-0 libv4l-dev python-numpy libpython2.6 python-dev python2.6-dev libgtk2.0-dev pkg-config
$ sudo apt-get install libswscale-dev
2.Buildの準備
$ wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/3.0.0/opencv-3.0.0.zip
$ unzip opencv-3.0.0.zip
$ cd opencv-3.0.0
$ mkdir build
$ cd build
ここからが、お味噌
Raspberry Piは、armv7です。
このまま、ビルドするとarmv6のコードになります。
もっと良い、方法があると思うけど、さくっと片付けたいので、、、
まずは、コンパイラーを4.8にします。
$ sudo apt-get install gcc-4.8 g++-4.8
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 20
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50
で、armv7を指定して実行すると、、、
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D ENABLE_VFPV3=ON -D ENABLE_NEON=ON -D BUILD_DOCS=OFF -D BUILD_TESTS=off -D BUILD_PERF_TESTS=OFF -D BUILD_TBB=ON -D BUILD_opencv_apps=OFF -D BUILD_opencv_gpu=OFF -D WITH_OPENCL=off -D WITH_1394=off -D WITH_CUDA=OFF -D WITH_CUFFT=OFF -D WITH_GIGEAPI=OFF -D WITH_OPENCLAMDBLAS=off -D WITH_OPENCLAMDFFT=off -D WITH_TBB=ON -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON ..
これは、失敗になります。こんなエラーがでます。
../../lib/libopencv_imgproc.so.3.0.0: undefined reference to `tbb::task_group_context::cancel_group_execution()'
で、 armv6で当面します。
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON
$ make -j 4
$ sudo make install
$ sudo ldconfig
$ cd bin
$ ./cpp-example-facedetect --cascade="../../data/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 ../../samples/data/lena.jpg
で、makeは、1時間位かかります。
Peace!!
----------------------------------------------------
これは、Raspberry Pi2用 メモ!!
-Wall -mfpu=neon-vfpv4 -mfloat-abi=hard -march=armv7-a
g++ tesp.cpp -o test -L/path/to/the/relevant/library/ -lnameoflib
where nameoflib would be eg. tbb if the actual shared library is named libtbb.so
Mac (OSX 10.10.x Yosemite) に、OpenCV3をソースコードからC++環境 buildする (^^)
ロボットの開発に使うので、C++環境を構築します。
OpenCV3では、Cはインターフェースはありますが、メンテナンスされないとの事(泣)
Pythonインターフェースは、後で、、、
CUDAも使わない。サクッと、今回はしたいのです。
あと、自分でビルドするのは、サンプルプログラムとかを確認したいので、
本当は、もっとよい方法があるかもです。
OpenCV3インストールの為に、brewを使うべく、OpenCV3では、Cはインターフェースはありますが、メンテナンスされないとの事(泣)
Pythonインターフェースは、後で、、、
CUDAも使わない。サクッと、今回はしたいのです。
あと、自分でビルドするのは、サンプルプログラムとかを確認したいので、
本当は、もっとよい方法があるかもです。
1.環境整備
Macportを削除して、Homebrewをインストールします。
1.1 Macport アンインストール
sudo port -fp uninstall --follow-dependents installed
Error: No ports matched the given expression
エラーは、無視。
$sudo rm -rf /opt/local /Applications/DarwinPorts /Applications/MacPorts /Library/LaunchDaemons/org.macports.* /Library/Receipts/DarwinPorts*.pkg /Library/Receipts/MacPorts*.pkg /Library/StartupItems/DarwinPortsStartup /Library/Tcl/darwinports1.0 /Library/Tcl/macports1.0 ~/.macports
これで、Macportを削除完了
1.2 Homebrewのインストール
1.2.1 Command Line Tools for Xcodeのインストール
xcode-select --install xcode-select: note: install requested for command line developer tools
画面のダイアログに従ってインストールする。
ちゃんとインストール出来たかは、
brew doctor
で確かめるよ。(^^)
1.2.2 Homebrewのインストール
Homebrewのホームページにインストールコマンドが書いてあるので、それをターミナルにコピペruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
あとは、画面の指示に従う。5分位もかからないYo.ちゃんとインストール出来たかは、
brew doctor
で確かめるよ。(^^)
Unexpected dylibs:
/usr/local/lib/JPKIPKCS11.dylib
/usr/local/lib/JPKIServiceAPI.dylib
って、メッセージでたので、とりあえずmvした。で、、、
$brew doctor
Your system is ready to brew.
となった。
それから、追加でインストール
$ brew install cmake
$ brew install pkg-config
1.2.3 opencv サックとインストール
これは、参考までです。
$ brew tap homebrew/science
$ brew install opncv3
でいろいろ処理して、こんな感じで終了でします。
This formula is keg-only, which means it was not symlinked into /usr/local.
opencv3 and opencv install many of the same files.
Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:
LDFLAGS: -L/usr/local/opt/opencv3/lib
CPPFLAGS: -I/usr/local/opt/opencv3/include
If you need Python to find bindings for this keg-only formula, run:
echo /usr/local/opt/opencv3/lib/python2.7/site-packages >> /usr/local/lib/python2.7/site-packages/opencv3.pth
==> Summary
🍺 /usr/local/Cellar/opencv3/3.0.0: 246 files, 103M
1.2.4 opencv3 ビルドとインストール
ここからが本番。
CUDAは、使いません。念の為に
$ mkdir ~/lib
$ git clone https://github.com/Itseez/opencv.git
$ cd opencv
$ git checkout tags/3.0.0
$ mkdir build
$ cd build
$ cmake -D WITH_CUDA=OFF -D CMAKE_INSTALL_PREFIX=~/opencv/build -D CMAKE_BUILD_TYPE=RELEASE ..
$ make
$ make install
$ cp lib/pkgconfig/opencv.pc /usr/local/lib/pkgconfig/opencv3.pc
$ vi ~/.bashrc
export DYLD_LIBRARY_PATH=$HOME/lib/opencv/build/lib:$DYLD_LIBRARY_PATH
$ git clone https://github.com/Itseez/opencv.git
$ cd opencv
$ git checkout tags/3.0.0
$ mkdir build
$ cd build
$ cmake -D WITH_CUDA=OFF -D CMAKE_INSTALL_PREFIX=~/opencv/build -D CMAKE_BUILD_TYPE=RELEASE ..
$ make
$ make install
$ cp lib/pkgconfig/opencv.pc /usr/local/lib/pkgconfig/opencv3.pc
$ vi ~/.bashrc
export DYLD_LIBRARY_PATH=$HOME/lib/opencv/build/lib:$DYLD_LIBRARY_PATH
編集して、保存
$ source ~/.bashrc
1.2.5 opencv3 テスト
これで、とりあえず完了
で、テストをする。
$ cd ../samples/cpp
$ g++ -ggdb `pkg-config --cflags --libs opencv3` facedetect.cpp -o /tmp/test && /tmp/test
$ g++ -ggdb `pkg-config --cflags --libs opencv3` facedetect.cpp -o /tmp/test && /tmp/test
はい、完成!!
Peace!!
Peace!!
登録:
投稿 (Atom)