智慧感測與應用實務| 08 :開關檔案、溫度感測器、色彩辨識

Eric Y | 薪火相傳
Eric Y | 薪火相傳
7 min readMar 29, 2019

▉利用.py檔開關其他檔案

同時間只有一個人可以write,但很多人可同時read

a:

加上b >>就是二進位檔,沒有加b就是文字檔

handle >>那個變數指向那個裝置

f.read()一次把檔案讀回來,下第二次就回傳回空字串>>解決方法:先把讀回來資料放變數

f.readline()>>一次讀一行

f.readlines()>>一次把檔案資料讀回來,以行為單位放入陣列

f. flush()>>馬上把記憶體資料存進硬碟 ,強制清緩衝區。將記憶體資料立即寫入檔案。

▉建議使用: with 語法開檔,只要離開with區段 程式自動關檔

_________________________________

w方式開檔,會先把檔案砍掉再重建

r+開檔會出現錯誤訊息

所以要先判斷檔案是否存在(如下)

import os

if os.path.isfile(“file.txt”):
print(“file exist”)
else:
print(“file not found”)

複製、移動檔案

import shutil

shutil.copy(“a.txt”, “b.txt”)
shutil.move(“b.txt”, “/tmp”)

>>練習待補 20190329 09:38~09:46

__________________________________________________

很多時候 有很多固定的程式碼會讓程式變得很繁雜>>解決方案:做成另外一個檔案,下次直接呼叫就好

mylib.py 內容

m.py 內容

執行結果:

_________________________________________________

package>類似資料夾的概念

但是 如果其他檔案只有import aaa.mylib,會沒有效果

必須該檔案內所有mylib都要改成 aaa.mylib,才會執行

_________________________________________________

▉溫度感測器

DHT11

溫度:0~50度C ±2
濕度:20%~90% ±5%
回應時間:超過兩秒

先下載DHT11_Python-master.zip

https://github.com/szazo/DHT11_Python

檔案下載後放在python路徑下

然後在\\192.168.212.131\pi\python\DHT11_Python-master路徑下,創一個溫濕度執行檔temSensor.py

內容如下:

注意temSensor.py和dht11在同目錄下

執行temSensor.py結果:

cr+z bg背景

CR+C 前景

在指令後加 & >>一起來就在背景>>但要先知道PID值

ps -elf

第四欄就是PID值

但資料太多

所以改打ps -elf | grep python

刪除資料

sudo kill -9 xxxx(PID值)

開機執行

找到>>>/etc/rc.local

# python /home/pi/mydht11.py &

排程程式內,不可以跑有無窮迴圈的程式,不然系統會很容易當機

/etc/crontab

crontab

https://www.puritys.me/docs-blog/article-20-cron-jobs-crontab-%E6%8E%92%E7%A8%8B%E6%95%99%E5%AD%B8.html

* * * * *

________________________________________________

▉色彩辨識

先運行Xlaunch,要有這個才會有動作

先進入虛擬環境(因為先前把open cv安裝在虛擬環境中)

下載檔案 https://github.com/alkasm/cspaceFilterPython

檔案解壓縮後放入Python路徑下,並在同目錄cspaceFilterPython-master資料夾 建立color.py

執行color.py,按esc拍照(會存成lane.jpg),我選了一個黃色圖形進行辨識(左下綠色方框先不管它,因為程式其實還沒設定好,結果是錯的)

執行example.py,就可調整lane.jpg,調整到只剩下黃色區塊

在照片上按2(選擇輸出為HSV格式)和b(印出目前最低和最高的邊界)

開啟color.py

把[0 54 29][14 73 89]值

回填前述color.py第4行程式碼

就能辨識黃色這個區塊

___________________________________________________

可修改之語音網址

http://tts.baidu.com/text2audio?idx=1&tex=哈哈哈&cuid=baidu_speech_demo&cod=2&lan=zh&ctp=1&pdt=1&spd=2&per=4&vol=5&pit=5&fbclid=IwAR2AtO2-bkBAHpaopm8FfCHeZphrnLGgMpmHH67UWH6LhxEgpaPk7cg477g

______________________________________________________

▉樹莓派連結SQL資料庫

>>待補

--

--