横井さんのロビー/専門ゼミ
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
[[横井]]
#contents
** 11月9日 raspberry piの初期設定 [#u5fc6976]
+必要なもの~
・USBキーボード(任意)~
・USBマウス(任意)~
・新品またはフォーマット済のmicroSDカード8GB以上(必須)~
・HDMIケーブル(任意)~
・LCDモニタ(HDMI入力があるもの)(任意)~
・ACアダプタ(必須)~
・PC(必須)~
・Raspberry pi 3 Model B(必須)~
・LANケーブル(任意)
+Raspbianのダウンロード~
・下記のリンクからOS(RASBIAN)をダウンロード~
・[[OS(RASPBIAN)の配布元:https://www.raspberrypi.org/down...
・Raspbian Stretch with desktopの欄にあるDownload ZIPをク...
・ダウンロード後解凍すると、Raspbianのディスクイメージフ...
+RaspbianをmicroSDに焼く~
・今回は、DD for Windows を使う。下記のリンクから最新バー...
・[[DD for Windows の配布元:http://www.si-linux.co.jp/tec...
・DL&解凍後、DDWin.exeを右クリックより管理者権限で起動。~
・ディスクの選択 → OSを焼くSDカードを選択。~
・ファイルの選択 → OSイメージを選択(ファイルの種類をddi→...
・<<書き込み<< をクリック~
・しばらく待つと完了~
+SSHの設定(他のパソコンから操作しないのであれば不要である...
・SDカードを開いて一番上の階層にsshという名前のファイルを...
~ここまでやって、raspberry piにmicroSDをいれると、起動で...
+raspberry piの起動方法~
・最初に、OSを入れたmicroSDをraspberry piに入れる。~
・次に、raspberry piとモニタをHDMIケーブルで繋げる。~
・次に、USBマウス、キーボードを持っているならraspberry pi...
・最後に、ACアダプタをraspberry piに繋げると起動する。
+各種設定変更~
・raspberry piにてターミナルを起動する。~
・raspberry piのターミナルで下記のコマンドを入力すると設...
・sudo raspi-config~
・Piユーザーのパスワードの変更~
・・Chagen User Password より行う~
・タイムゾーン&Wifiの設定~
・・Localisation Options → Change Timezone からタイムゾー...
・・Localisation Options → Change Wi-fi Country から Wifi...
・SDカードの拡張~
・・Advanced Options → Expand Filesystem~
・・大容量のSDカードを使用しても、初期設定のままでは先頭...
・上記の設定を終えたらFinishを押し再起動する。
+Wifi接続方法~
-注意 富山県立大学のwifiを使うときは、物理アドレス登録が...
-ターミナルで下記のコマンドを入力する。SSIDとPASSPHRASEは...
--sudo sh -c 'wpa_passphrase SSID PASSPHRASE >> /etc/wpa_...
-お節介でパスワードが生で記述されているので下記のコマンド...
--vi /etc/wpa_supplicant/wpa_supplicant.conf
-再起動後 ip addr コマンド等で無線LANのIPアドレスを確認す...
IPアドレスを確認することでTera Term等を用いて、他のパソコ...
Tera termを用いたSSH接続については、12月6日の欄で説明...
+パッケージ情報を最新にする
-ターミナルで下記のコマンドを入力
--sudo apt-get update
-次に、下記のコマンドを入力
--sudo apt-get upgrade
-続行しますか?[Y/n] と表示されます。「Y」を入力し、しば...
-その後下記のコマンドを入力し再起動
--sudo reboot
-ほかにノートパソコンにダウンロードしたもの
--[[窓の杜|Tera Term:https://forest.watch.impress.co.jp/...
--[[iTuens:https://www.apple.com/jp/itunes/download/]](こ...
-参考サイト
--[[モニターキーボードなしでRaspberry Pi 3のセットアップ:...
--[[Raspberry Pi 3を買ってMacを使ってWiFi接続とSSHの接続...
--[[Raspberry Pi 3のセットアップ→日本語入力まで(MacOS、N...
** 11月16日 温湿度センサ [#t1f94cbd]
-下記にraspberry piと温湿度センサDHT11の接続方法を載せる。
#ref(wiki1.png,,50%)
-raspberry piのターミナルにて下記のコマンドを入力するとgi...
--sudo apt-get install git
-次に、プログラムを入れたいフォルダに移動して、下記のコマ...
--git clone https://github.com/szazo/DHT11_Python.git
-最後に、プログラムの入っているフォルダに移動して、ターミ...
--sudo python dht11_example.py
-下の画像のように温度と湿度の値が表示されれば完成。
#ref(wiki2.png,,50%)
-参考サイト
--[[Raspberry Pi3(ラズベリーパイ3)とDHT11の温湿度センサー...
** 11月30日 KY-038 KY-039 [#l631f5fd]
-未完成
-以下、参考リンク
-http://bitwave.showcase-tv.com/raspberry-pi%e3%81%a8%e3%...
-https://developer.cybozu.io/hc/ja/articles/205642634-%E5...
** 12月6日 Tera termから得られるデータを用いてPCから何か...
+Tera termの使い方~
・Tera termのダウンロード方法については、下記のサイトを参...
・[[【ゼロからわかる】Teratermのインストールと使い方:http...
・ダウンロードしたTera termを起動すると、下記のような画面...
#ref(wiki3.png,,50%)
・上の画像の、ホスト(T):の所にraspberry piのIPアドレスを...
・すると、下記のような画面が表示されるので続行をクリック...
#ref(wiki4.png,,50%)
・次に、下記のような画面が表示されるので、raspberry piの...
・初期設定であれば、ユーザー名はpi、パスワードはraspberry...
#ref(wiki5.png,,50%)
・その後、OKをクリックするとraspberry piとSSH接続できる。
+Tera term マクロの作成と使用~
・先ほど、ログイン方法を説明したばかりだが、自動でログイ...
・まず下記のコードを入力した拡張子が.ttlのファイルを作る。~
;接続先ホスト
HOSTADDR = '133.55.174.76'
;ユーザ名
USERNAME = 'pi'
;パスワード設定
PASSWORD = 'raspberry'
;接続コマンド作成
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
;接続
connect COMMAND
;================================================
;ログファイル保存
wait '$'
logopen "C:\raspberry\Project1\Debug\command.txt" 0 1
sendln ""
wait '$'
sendln "cd DHT11_Python"
wait '$'
sendln "python dht11_example.py"
wait '$'
logclose
;================================================
;マクロ終了
end
・133.55.174.76は、自分のraspberry piのIPアドレスに変える...
・piは、ユーザー名を変えたならそのユーザー名にする。~
・raspberryは、パスワードを変えたならそのパスワードにする...
・C:\raspberry\Project1\Debug\command.txtの部分はログの保...
・cd DHT11_Pythonの部分は、raspberry pi内のdht11_example....
・その後、Tera termを起動し上のコントロールをクリックしマ...
・すると、ファイルを選択する画面になるのでttlファイルを選...
・今回は、先程作成したttlファイルを選択する。~
・すると、マクロが起動し、PC上に温湿度が取得できる。上の...
+C++を用いて入力されたログの最終行を読み取る方法~
・あまり理解していないがC++の下記のコードで読み取ることが...
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include <windows.h>
#define STR_MAX 256
int main(void)
{
FILE *fp;
int str_max = STR_MAX;
char buf[STR_MAX];
int step, kk, n_line;
while (1) {
Sleep(3000);
fp = fopen("command.txt", "r");
if (fp == NULL) {
printf("can't open file\n");
return -1; /*abort();*/
}
n_line = 0;
while (fgets(buf, str_max, fp) != NULL) {
n_line++;
} //行数のカウント
fclose(fp);
fp = fopen("command.txt", "r");
for (kk = 0; kk < n_line - 1; kk++)//上からn_line-1行は...
{
fgets(buf, str_max, fp);
}
fscanf(fp, "%d\n", &step);
//printf("%d\n", step);
fclose(fp);
if (step >= 25) {
}
}
}
・このコードは、raspberry pi内のdht11_example.pyを温度の...
・if文の中に、何か制御を入れると温度が25℃以上の時に実行さ...
・上記のコードを用いたパソコンのカメラを制御するC++のプロ...
+Visual Studio 2015でOpenCVを動かすための環境設定 Windows...
・OpenCVを[[こちら:https://opencv.org/]]から下記の図のよ...
#ref(wiki7.png,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki8.png,,50%)
・ダウンロードしたファイルを起動するとOpenCVの解凍処理に...
・解凍が完了すると「opencv」といるフォルダが生成されてい...
・次は、ソースコード上で静的リンクライブラリの指定が可能...
・作成場所は「C:\任意の場所\opencv\build\include\opencv2\...
・opencv_lib.hppの中身は次のように記述してください。~
#if _DEBUG
#pragma comment(lib, "opencv_calib3d2411d.lib")
#pragma comment(lib, "opencv_contrib2411d.lib")
#pragma comment(lib, "opencv_core2411d.lib")
#pragma comment(lib, "opencv_features2d2411d.lib")
#pragma comment(lib, "opencv_flann2411d.lib")
#pragma comment(lib, "opencv_gpu2411d.lib")
#pragma comment(lib, "opencv_highgui2411d.lib")
#pragma comment(lib, "opencv_imgproc2411d.lib")
#pragma comment(lib, "opencv_legacy2411d.lib")
#pragma comment(lib, "opencv_ml2411d.lib")
#pragma comment(lib, "opencv_nonfree2411d.lib")
#pragma comment(lib, "opencv_objdetect2411d.lib")
#pragma comment(lib, "opencv_ocl2411d.lib")
#pragma comment(lib, "opencv_photo2411d.lib")
#pragma comment(lib, "opencv_stitching2411d.lib")
#pragma comment(lib, "opencv_superres2411d.lib")
#pragma comment(lib, "opencv_ts2411d.lib")
#pragma comment(lib, "opencv_video2411d.lib")
#pragma comment(lib, "opencv_videostab2411d.lib")
#else
#pragma comment(lib, "opencv_calib3d2411.lib")
#pragma comment(lib, "opencv_contrib2411.lib")
#pragma comment(lib, "opencv_core2411.lib")
#pragma comment(lib, "opencv_features2d2411.lib")
#pragma comment(lib, "opencv_flann2411.lib")
#pragma comment(lib, "opencv_gpu2411.lib")
#pragma comment(lib, "opencv_highgui2411.lib")
#pragma comment(lib, "opencv_imgproc2411.lib")
#pragma comment(lib, "opencv_legacy2411.lib")
#pragma comment(lib, "opencv_ml2411.lib")
#pragma comment(lib, "opencv_nonfree2411.lib")
#pragma comment(lib, "opencv_objdetect2411.lib")
#pragma comment(lib, "opencv_ocl2411.lib")
#pragma comment(lib, "opencv_photo2411.lib")
#pragma comment(lib, "opencv_stitching2411.lib")
#pragma comment(lib, "opencv_superres2411.lib")
#pragma comment(lib, "opencv_ts2411.lib")
#pragma comment(lib, "opencv_video2411.lib")
#pragma comment(lib, "opencv_videostab2411.lib")
#endif
・opencv_lib.hpp作成が終わったら、Windowsの環境変数のpath...
・動的ライブラリが配置されてる場所は「C:\任意の場所\openc...
・;C:\任意の場所\opencv\build\x64\vc12\binの最初の;を忘れ...
#ref(wiki9.jpg,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki10.jpg,,50%)
+Visual Studio 2015でOpenCVを動かすための環境設定 Visual ...
・Visual Studio 2015では、プロジェクトがOpenCVを認識でき...
・まず、「ファイル>新規作成>プロジェクト」をクリックし...
・プロジェクト名は「opencvsample」にします。
#ref(wiki11.jpg,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki12.jpg,,50%)
・プロジェクトが生成されたら、x64用アプリケーションを作成...
・「ビルド>構成マネージャー」をクリックして、アクティブ...
#ref(wiki13.jpg,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki14.jpg,,50%)
・これからOpenCVの「includeフォルダ」を指定します。~
・ソリューションエクスプローラーのプロジェクト名を選択し...
・メニューから「プロパティ」を選択するとプロジェクトのプ...
・プロジェクトのプロパティページの左側のツリーで「構成プ...
#ref(wiki15.jpg,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki16.jpg,,50%)
・次は、「ライブラリフォルダ」を指定します。~
・プロジェクトのプロパティページの左側のツリーで「構成プ...
・右側の設定画面に「追加のライブラリディレクトリ」が見え...
#ref(wiki17.jpg,,50%)
・これで、環境設定は終わりです。~
・最後に、温度が25℃以上になったらカメラからの画像を保存す...
・↓opencvsample.cppのコード~
// opencvsample.cpp : コンソール アプリケーションのエン...
//
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include "stdafx.h"
#include <opencv2/opencv.hpp> // インクルードファイル指定
#include <opencv2/opencv_lib.hpp> // 静的リンクライブラ...
using namespace cv; // 名前空間の指定
int main(int argh, char* argv[])
{
FILE *fp;
int str_max = 256;
char buf[256];
int step, kk, n_line;
cv::VideoCapture cap(0);//デバイスのオープン
//cap.open(0);//こっちでも良い.
if (!cap.isOpened())//カメラデバイスが正常にオープンした...
{
//読み込みに失敗したときの処理
return -1;
}
while (1) {
//Sleep(3000);
cv::Mat frame;
cap >> frame; // get a new frame from camera
//
//取得したフレーム画像に対して,クレースケール変換...
//
cv::imshow("window", frame);//画像を表示.
fp = fopen("command.txt", "r");
if (fp == NULL) {
printf("can't open file\n");
return -1; /*abort();*/
}
n_line = 0;
while (fgets(buf, str_max, fp) != NULL) {
n_line++;
} //行数のカウント
fclose(fp);
fp = fopen("command.txt", "r");
for (kk = 0; kk < n_line - 1; kk++)//上からn_line-1行は...
{
fgets(buf, str_max, fp);
}
fscanf(fp, "%d\n", &step);
//printf("%d\n", step);
fclose(fp);
if (step >= 25) {
//cv::Mat frame;
//cap >> frame; // get a new frame from camera
//
//取得したフレーム画像に対して,クレースケール変...
//
//cv::imshow("window", frame);//画像を表示.
cv::imwrite("img.png", frame);
}
int key = cv::waitKey(1);
if (key == 113)//qボタンが押されたとき
{
break;//whileループから抜ける.
}
}
cv::destroyAllWindows();
return 0;
}
・stdafx.hのコード~
#pragma once
#include "targetver.h"
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <tchar.h>
#include <windows.h>
-参考サイト~
--[[ファイルの最終行のみ読み込みたい。:https://detail.chi...
--[[TeraTerm マクロ入門:http://www.illinternet.com/2017/0...
--[[【ゼロからわかる】Teratermのインストールと使い方:http...
--https://qiita.com/vs4sh/items/4a9ce178f1b2fd26ea30
--
終了行:
[[横井]]
#contents
** 11月9日 raspberry piの初期設定 [#u5fc6976]
+必要なもの~
・USBキーボード(任意)~
・USBマウス(任意)~
・新品またはフォーマット済のmicroSDカード8GB以上(必須)~
・HDMIケーブル(任意)~
・LCDモニタ(HDMI入力があるもの)(任意)~
・ACアダプタ(必須)~
・PC(必須)~
・Raspberry pi 3 Model B(必須)~
・LANケーブル(任意)
+Raspbianのダウンロード~
・下記のリンクからOS(RASBIAN)をダウンロード~
・[[OS(RASPBIAN)の配布元:https://www.raspberrypi.org/down...
・Raspbian Stretch with desktopの欄にあるDownload ZIPをク...
・ダウンロード後解凍すると、Raspbianのディスクイメージフ...
+RaspbianをmicroSDに焼く~
・今回は、DD for Windows を使う。下記のリンクから最新バー...
・[[DD for Windows の配布元:http://www.si-linux.co.jp/tec...
・DL&解凍後、DDWin.exeを右クリックより管理者権限で起動。~
・ディスクの選択 → OSを焼くSDカードを選択。~
・ファイルの選択 → OSイメージを選択(ファイルの種類をddi→...
・<<書き込み<< をクリック~
・しばらく待つと完了~
+SSHの設定(他のパソコンから操作しないのであれば不要である...
・SDカードを開いて一番上の階層にsshという名前のファイルを...
~ここまでやって、raspberry piにmicroSDをいれると、起動で...
+raspberry piの起動方法~
・最初に、OSを入れたmicroSDをraspberry piに入れる。~
・次に、raspberry piとモニタをHDMIケーブルで繋げる。~
・次に、USBマウス、キーボードを持っているならraspberry pi...
・最後に、ACアダプタをraspberry piに繋げると起動する。
+各種設定変更~
・raspberry piにてターミナルを起動する。~
・raspberry piのターミナルで下記のコマンドを入力すると設...
・sudo raspi-config~
・Piユーザーのパスワードの変更~
・・Chagen User Password より行う~
・タイムゾーン&Wifiの設定~
・・Localisation Options → Change Timezone からタイムゾー...
・・Localisation Options → Change Wi-fi Country から Wifi...
・SDカードの拡張~
・・Advanced Options → Expand Filesystem~
・・大容量のSDカードを使用しても、初期設定のままでは先頭...
・上記の設定を終えたらFinishを押し再起動する。
+Wifi接続方法~
-注意 富山県立大学のwifiを使うときは、物理アドレス登録が...
-ターミナルで下記のコマンドを入力する。SSIDとPASSPHRASEは...
--sudo sh -c 'wpa_passphrase SSID PASSPHRASE >> /etc/wpa_...
-お節介でパスワードが生で記述されているので下記のコマンド...
--vi /etc/wpa_supplicant/wpa_supplicant.conf
-再起動後 ip addr コマンド等で無線LANのIPアドレスを確認す...
IPアドレスを確認することでTera Term等を用いて、他のパソコ...
Tera termを用いたSSH接続については、12月6日の欄で説明...
+パッケージ情報を最新にする
-ターミナルで下記のコマンドを入力
--sudo apt-get update
-次に、下記のコマンドを入力
--sudo apt-get upgrade
-続行しますか?[Y/n] と表示されます。「Y」を入力し、しば...
-その後下記のコマンドを入力し再起動
--sudo reboot
-ほかにノートパソコンにダウンロードしたもの
--[[窓の杜|Tera Term:https://forest.watch.impress.co.jp/...
--[[iTuens:https://www.apple.com/jp/itunes/download/]](こ...
-参考サイト
--[[モニターキーボードなしでRaspberry Pi 3のセットアップ:...
--[[Raspberry Pi 3を買ってMacを使ってWiFi接続とSSHの接続...
--[[Raspberry Pi 3のセットアップ→日本語入力まで(MacOS、N...
** 11月16日 温湿度センサ [#t1f94cbd]
-下記にraspberry piと温湿度センサDHT11の接続方法を載せる。
#ref(wiki1.png,,50%)
-raspberry piのターミナルにて下記のコマンドを入力するとgi...
--sudo apt-get install git
-次に、プログラムを入れたいフォルダに移動して、下記のコマ...
--git clone https://github.com/szazo/DHT11_Python.git
-最後に、プログラムの入っているフォルダに移動して、ターミ...
--sudo python dht11_example.py
-下の画像のように温度と湿度の値が表示されれば完成。
#ref(wiki2.png,,50%)
-参考サイト
--[[Raspberry Pi3(ラズベリーパイ3)とDHT11の温湿度センサー...
** 11月30日 KY-038 KY-039 [#l631f5fd]
-未完成
-以下、参考リンク
-http://bitwave.showcase-tv.com/raspberry-pi%e3%81%a8%e3%...
-https://developer.cybozu.io/hc/ja/articles/205642634-%E5...
** 12月6日 Tera termから得られるデータを用いてPCから何か...
+Tera termの使い方~
・Tera termのダウンロード方法については、下記のサイトを参...
・[[【ゼロからわかる】Teratermのインストールと使い方:http...
・ダウンロードしたTera termを起動すると、下記のような画面...
#ref(wiki3.png,,50%)
・上の画像の、ホスト(T):の所にraspberry piのIPアドレスを...
・すると、下記のような画面が表示されるので続行をクリック...
#ref(wiki4.png,,50%)
・次に、下記のような画面が表示されるので、raspberry piの...
・初期設定であれば、ユーザー名はpi、パスワードはraspberry...
#ref(wiki5.png,,50%)
・その後、OKをクリックするとraspberry piとSSH接続できる。
+Tera term マクロの作成と使用~
・先ほど、ログイン方法を説明したばかりだが、自動でログイ...
・まず下記のコードを入力した拡張子が.ttlのファイルを作る。~
;接続先ホスト
HOSTADDR = '133.55.174.76'
;ユーザ名
USERNAME = 'pi'
;パスワード設定
PASSWORD = 'raspberry'
;接続コマンド作成
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
;接続
connect COMMAND
;================================================
;ログファイル保存
wait '$'
logopen "C:\raspberry\Project1\Debug\command.txt" 0 1
sendln ""
wait '$'
sendln "cd DHT11_Python"
wait '$'
sendln "python dht11_example.py"
wait '$'
logclose
;================================================
;マクロ終了
end
・133.55.174.76は、自分のraspberry piのIPアドレスに変える...
・piは、ユーザー名を変えたならそのユーザー名にする。~
・raspberryは、パスワードを変えたならそのパスワードにする...
・C:\raspberry\Project1\Debug\command.txtの部分はログの保...
・cd DHT11_Pythonの部分は、raspberry pi内のdht11_example....
・その後、Tera termを起動し上のコントロールをクリックしマ...
・すると、ファイルを選択する画面になるのでttlファイルを選...
・今回は、先程作成したttlファイルを選択する。~
・すると、マクロが起動し、PC上に温湿度が取得できる。上の...
+C++を用いて入力されたログの最終行を読み取る方法~
・あまり理解していないがC++の下記のコードで読み取ることが...
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include <windows.h>
#define STR_MAX 256
int main(void)
{
FILE *fp;
int str_max = STR_MAX;
char buf[STR_MAX];
int step, kk, n_line;
while (1) {
Sleep(3000);
fp = fopen("command.txt", "r");
if (fp == NULL) {
printf("can't open file\n");
return -1; /*abort();*/
}
n_line = 0;
while (fgets(buf, str_max, fp) != NULL) {
n_line++;
} //行数のカウント
fclose(fp);
fp = fopen("command.txt", "r");
for (kk = 0; kk < n_line - 1; kk++)//上からn_line-1行は...
{
fgets(buf, str_max, fp);
}
fscanf(fp, "%d\n", &step);
//printf("%d\n", step);
fclose(fp);
if (step >= 25) {
}
}
}
・このコードは、raspberry pi内のdht11_example.pyを温度の...
・if文の中に、何か制御を入れると温度が25℃以上の時に実行さ...
・上記のコードを用いたパソコンのカメラを制御するC++のプロ...
+Visual Studio 2015でOpenCVを動かすための環境設定 Windows...
・OpenCVを[[こちら:https://opencv.org/]]から下記の図のよ...
#ref(wiki7.png,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki8.png,,50%)
・ダウンロードしたファイルを起動するとOpenCVの解凍処理に...
・解凍が完了すると「opencv」といるフォルダが生成されてい...
・次は、ソースコード上で静的リンクライブラリの指定が可能...
・作成場所は「C:\任意の場所\opencv\build\include\opencv2\...
・opencv_lib.hppの中身は次のように記述してください。~
#if _DEBUG
#pragma comment(lib, "opencv_calib3d2411d.lib")
#pragma comment(lib, "opencv_contrib2411d.lib")
#pragma comment(lib, "opencv_core2411d.lib")
#pragma comment(lib, "opencv_features2d2411d.lib")
#pragma comment(lib, "opencv_flann2411d.lib")
#pragma comment(lib, "opencv_gpu2411d.lib")
#pragma comment(lib, "opencv_highgui2411d.lib")
#pragma comment(lib, "opencv_imgproc2411d.lib")
#pragma comment(lib, "opencv_legacy2411d.lib")
#pragma comment(lib, "opencv_ml2411d.lib")
#pragma comment(lib, "opencv_nonfree2411d.lib")
#pragma comment(lib, "opencv_objdetect2411d.lib")
#pragma comment(lib, "opencv_ocl2411d.lib")
#pragma comment(lib, "opencv_photo2411d.lib")
#pragma comment(lib, "opencv_stitching2411d.lib")
#pragma comment(lib, "opencv_superres2411d.lib")
#pragma comment(lib, "opencv_ts2411d.lib")
#pragma comment(lib, "opencv_video2411d.lib")
#pragma comment(lib, "opencv_videostab2411d.lib")
#else
#pragma comment(lib, "opencv_calib3d2411.lib")
#pragma comment(lib, "opencv_contrib2411.lib")
#pragma comment(lib, "opencv_core2411.lib")
#pragma comment(lib, "opencv_features2d2411.lib")
#pragma comment(lib, "opencv_flann2411.lib")
#pragma comment(lib, "opencv_gpu2411.lib")
#pragma comment(lib, "opencv_highgui2411.lib")
#pragma comment(lib, "opencv_imgproc2411.lib")
#pragma comment(lib, "opencv_legacy2411.lib")
#pragma comment(lib, "opencv_ml2411.lib")
#pragma comment(lib, "opencv_nonfree2411.lib")
#pragma comment(lib, "opencv_objdetect2411.lib")
#pragma comment(lib, "opencv_ocl2411.lib")
#pragma comment(lib, "opencv_photo2411.lib")
#pragma comment(lib, "opencv_stitching2411.lib")
#pragma comment(lib, "opencv_superres2411.lib")
#pragma comment(lib, "opencv_ts2411.lib")
#pragma comment(lib, "opencv_video2411.lib")
#pragma comment(lib, "opencv_videostab2411.lib")
#endif
・opencv_lib.hpp作成が終わったら、Windowsの環境変数のpath...
・動的ライブラリが配置されてる場所は「C:\任意の場所\openc...
・;C:\任意の場所\opencv\build\x64\vc12\binの最初の;を忘れ...
#ref(wiki9.jpg,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki10.jpg,,50%)
+Visual Studio 2015でOpenCVを動かすための環境設定 Visual ...
・Visual Studio 2015では、プロジェクトがOpenCVを認識でき...
・まず、「ファイル>新規作成>プロジェクト」をクリックし...
・プロジェクト名は「opencvsample」にします。
#ref(wiki11.jpg,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki12.jpg,,50%)
・プロジェクトが生成されたら、x64用アプリケーションを作成...
・「ビルド>構成マネージャー」をクリックして、アクティブ...
#ref(wiki13.jpg,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki14.jpg,,50%)
・これからOpenCVの「includeフォルダ」を指定します。~
・ソリューションエクスプローラーのプロジェクト名を選択し...
・メニューから「プロパティ」を選択するとプロジェクトのプ...
・プロジェクトのプロパティページの左側のツリーで「構成プ...
#ref(wiki15.jpg,,50%)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...
#ref(wiki16.jpg,,50%)
・次は、「ライブラリフォルダ」を指定します。~
・プロジェクトのプロパティページの左側のツリーで「構成プ...
・右側の設定画面に「追加のライブラリディレクトリ」が見え...
#ref(wiki17.jpg,,50%)
・これで、環境設定は終わりです。~
・最後に、温度が25℃以上になったらカメラからの画像を保存す...
・↓opencvsample.cppのコード~
// opencvsample.cpp : コンソール アプリケーションのエン...
//
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include "stdafx.h"
#include <opencv2/opencv.hpp> // インクルードファイル指定
#include <opencv2/opencv_lib.hpp> // 静的リンクライブラ...
using namespace cv; // 名前空間の指定
int main(int argh, char* argv[])
{
FILE *fp;
int str_max = 256;
char buf[256];
int step, kk, n_line;
cv::VideoCapture cap(0);//デバイスのオープン
//cap.open(0);//こっちでも良い.
if (!cap.isOpened())//カメラデバイスが正常にオープンした...
{
//読み込みに失敗したときの処理
return -1;
}
while (1) {
//Sleep(3000);
cv::Mat frame;
cap >> frame; // get a new frame from camera
//
//取得したフレーム画像に対して,クレースケール変換...
//
cv::imshow("window", frame);//画像を表示.
fp = fopen("command.txt", "r");
if (fp == NULL) {
printf("can't open file\n");
return -1; /*abort();*/
}
n_line = 0;
while (fgets(buf, str_max, fp) != NULL) {
n_line++;
} //行数のカウント
fclose(fp);
fp = fopen("command.txt", "r");
for (kk = 0; kk < n_line - 1; kk++)//上からn_line-1行は...
{
fgets(buf, str_max, fp);
}
fscanf(fp, "%d\n", &step);
//printf("%d\n", step);
fclose(fp);
if (step >= 25) {
//cv::Mat frame;
//cap >> frame; // get a new frame from camera
//
//取得したフレーム画像に対して,クレースケール変...
//
//cv::imshow("window", frame);//画像を表示.
cv::imwrite("img.png", frame);
}
int key = cv::waitKey(1);
if (key == 113)//qボタンが押されたとき
{
break;//whileループから抜ける.
}
}
cv::destroyAllWindows();
return 0;
}
・stdafx.hのコード~
#pragma once
#include "targetver.h"
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <tchar.h>
#include <windows.h>
-参考サイト~
--[[ファイルの最終行のみ読み込みたい。:https://detail.chi...
--[[TeraTerm マクロ入門:http://www.illinternet.com/2017/0...
--[[【ゼロからわかる】Teratermのインストールと使い方:http...
--https://qiita.com/vs4sh/items/4a9ce178f1b2fd26ea30
--
ページ名: