2017年9月28日 星期四

Install Tensorflow on Raspberry Pi 2

Reference https://petewarden.com/2017/08/20/cross-compiling-tensorflow-for-the-raspberry-pi/

This is a record of installing Tensorflow on Raspberry Pi 2.
The OS is Raspbian. Login with username pi password raspberry.

pi@raspberrypi:~/tf $ mkdir -p tf/
pi@raspberrypi:~/tf $ cd tf/

pi@raspberrypi:~/tf $ sudo apt-get install libblas-dev liblapack-dev python-dev \
> libatlas-base-dev gfortran python-setuptools

pi@raspberrypi:~/tf $ pip2 install http://ci.tensorflow.org/view/Nightly/job/nightly-pi/lastSuccessfulBuild/artifact/output-artifacts/tensorflow-1.4.0-cp27-none-any.whl

Now the Tensorflow is installed.

pi@raspberrypi:~/tf $ python
Python 2.7.13 (default, Jan 19 2017, 14:48:08) 
[GCC 6.3.0 20170124] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>>


2017年9月4日 星期一

BMW M62TU電子節溫器改裝 (Part 3)

電子節溫器控制專案 OpenBTD - Open BMW Thermostat Daemon

https://github.com/gigijoe/OpenBTD

該專案為開放原始碼專案包含硬體及軟體,專案授權為BSD 3-clause License.以上翻譯成中文就是任何人都可以免費使用,複製及修改該專案,而作者對使用該專案所帶來的各種損害均不負賠償責任.

Safety - 安全

1.轉速RPM為零時表示引擎未運轉則加熱器關
2.加熱器耗電流應該在1A左右,大於2A視為加熱器有短路狀況則加熱器關
3.硬體故障或軟體錯誤加熱器開,電子節溫器常開造成水溫低但無損壞引擎疑慮.
4.硬體故障或軟體錯誤加熱器關,電子節溫器直到105度C才會開啟,水溫仍維持在原廠設計範圍且無損壞引擎疑慮.

Hardware - 硬體



主IC是STM32F103C8T6.這是一顆32位元多功能CPU應用在自動控制及回授的場合.電路圖左下角部份是I-Bus訊號的讀取線路,這是從網路上找的線路再經過些許修改.電路圖右上角部份是加熱器開關以及電流量測的線路,加熱器開關是由CPU控制繼電器空接或接地.電路圖右邊中間部份是電子風扇PWM訊號的升壓線路,目前沒有用到.電路圖右下角部份是電壓測量線路.整個週邊的電子元件其實不多,也盡量使用一般市面上容易取得的零件.



Software - 軟體



1.讀取並顯示冷卻水溫.
2.測量並顯示電壓.
3.讀取戶外溫度,引擎轉速RPM及行駛速度.
4.調整及設定目標水溫.
5.依據目標水溫,冷卻水溫,戶外溫度,引擎轉速RPM及行駛速度開關加熱器.
6.測量並顯示加熱器耗電流.
7.強制開啟加熱器





Modification - 改裝

OpenBTD安裝於副駕駛座手套箱後方空間,共需要接4條線到OpenBTD



1.電源12V
2.接地
3.I-Bus - 白底,灰條,黃段
可由音響(中控台)或LCM(副駕駛座腳邊)並接出I-Bus線接到OpenBTD.



4.加熱器控制線路在X60003 - pin 31 (白色線).
加熱器控制線路就在副駕駛邊電腦盒.剪斷白色線,接到DME端的白色線串連1K/1W電阻後接12V,接到線組端的白色線接延長線並穿過防火牆組穿越孔至手套箱後方接到OpenBTD





Testing - 測試

預設目標水溫是95度C,戶外溫度是26度C.OpenBTD會依據戶外溫度,引擎轉速RPM提前開啟加熱器,這是為了補償加熱器需要時間才能完全開啟.所以目標水溫其實是我們希望不要超過的最高水溫.實際觀察發現
1.怠速或市區走走停停加熱器已開啟溫度會在93~100度C之間來回.
理論上熱器開啟水龜會全開溫度不應該會高到100度C,不過還有其他因素會影響溫度如離合器風扇風量,水龜是否劣化,主水箱是否暢通等.因此待日後有機會更換各個散熱零件再來觀察.

2.高速公路會在91~94度C之間來回,上坡高負載路段最高到97~98度C左右,下坡路段最低到88~87度C
有撞風後溫度基本上已經在想要的範圍內



影響水溫的條件實在太多了,冷卻系統各個零件都正常運作才能讓水溫保持在合適的狀態.水溫超過原廠設定的範圍,應該找出其中故障的零件,改裝電子節溫器並不是維修的方式.