Raspberry PI 當作物聯網的一個 Node,從 0 開始、安裝與設定

本版討論Raspberry PI相關技術開發、設計與應用
回覆文章
inho
文章: 48
註冊時間: 2017-12-08, 23:00

Raspberry PI 當作物聯網的一個 Node,從 0 開始、安裝與設定

文章 inho » 2018-01-24, 11:05

Raspberry PI 3 開箱之後,要規劃設計當作物聯網的一個 Node,從 0 開始,安狀、設定:
************* 必須先做的幾件事: ************************************************************************************************
一、規劃 MicroSD卡、安裝作業系統
二、開發環境設定:網路、
三、相關軟體的安裝
A、Web Server: Nginx, MariaDB, php
B、SDL2、SDL2_image、SDL2_ttf、SDL2_net
安裝完成會新增 include header files 及 相關 Library files ==> include file: /usr/local/include/SDL2,Library file: /usr/local/lib/libSDL2....
/usr/local/bin/sdl2-config
C、x264、FFmpeg
安裝完成會在 /usr/local/bin/ 目錄新增 ffmpeg、ffplay、ffprobe 及 x264 執行檔
D、openCV
E、Qt
F、Geany (預設已經安裝)
***************************************************************************************************************
一、規劃 MicroSD卡、安裝作業系統:

必要設備:MicroSD卡,16GB、32GB、或64GB 都OK,注意SD卡的存取速度、等級,我使用SanDisk Ultra microSDXC 64 GB speed up to 80 MB/S

A、 先透過 Windows 系統 安裝 microSD format 程式: https://www.sdcard.org/cht/downloads/formatter_4/,安裝完成後,將SD卡放入電腦插槽,執行 SDFormatter 程式,格式化 SD卡。
B、在Windows 系統,下載並安裝 Win32DiskImager 程式:https://sourceforge.net/projects/win32diskimager/
C、選擇、並下載擬安裝的 Raspberry PI 作業系統,Google 一下 "Raspberry pi OS",可以找到很多資訊,會讓你不知道怎麼選擇一個適當的 RPi 作業系統,官方網站: https://www.raspberrypi.org/downloads/,一般使用者建議,安裝 Raspbian ( RASPBIAN STRETCH WITH DESKTOP) 就好了,https://www.raspberrypi.org/downloads/raspbian/ Web 畫面 點選Download ZIP,本文發表時的最新版本:2017-11-29-raspbian-stretch.zip。
D、在Windows 系統,下載並安裝 VirtualDVD 程式:http://ohsoft.net/eng/,安裝完成後可以在右下方工作列中,看到 VirtualDVD ICon,滑鼠點選 -->虛擬裝置 -->無媒體 -->掛載鏡像,然後,選擇前述下載擬安裝的Raspberry PI OS:"2017-11-29-raspbian-stretch.zip" 。
E、執行 Win32DiskImager 程式,選擇裝置代號(SD卡放入插槽後已預設好,部過,還是要注意一下你的SD卡在電腦中的硬碟代碼),並找到剛剛下載的作業系統映像檔:2017-11-29-raspbian-stretch,開啟選擇之後,點選【寫資料到裝置】,花一點時間等電腦完成燒錄(寫入)動作直到完成,然後,取出MicroSD卡,放入 Raspberry PI 背面的SD 卡槽內。
完成前述動作,就已經算是完成安裝動作了,接下來,就是準備接線、開機,進行系統安裝設定的問題,...

==================================================================================================
二、開發環境設定與相關軟體的安裝
A、接線:想辦法從RPi 的 HDMI介面,接上 銀幕顯示器;並連接 USB滑鼠及鍵盤,若使用無線滑鼠及鍵盤更方便。
B、連接網路接頭;可直接連接有線乙太網路,也可利用內建 WiFi連接上網
C、開機啟動:連接電源線,透過 USB接頭連接電源,跟手機充電一樣的方法。要注意的是:接上電源,RPi 就直接開機了,要記得 Power ON 電腦銀幕, Raspbian 的開機流程會陸續顯示出來,最後,會顯示預設的開機畫面,順利的話就可以看到 Raspberry PI 的 Linux 系統 Raspbian 視窗畫面,如果,銀幕上一直無法顯示 任何訊息,有可能是 HDMI 到 RGB的轉接頭有問題,只能重新開機,或換另一種轉接頭試看看。

===================================================================================================
D、開機進入系統,預設帳號: pi ,密碼:raspberry (此為系統預設密碼)。登入以後,先做幾件事,設定基本的工作環境:先開啟一個終端機程式:
E、執行 RPi 工作環境 Configuration,在終端機裡執行 configuration指令,設定相關參數、啟動硬體設備的相關服務功能:
$ sudo raspi-config
會顯示以下功能設定選項:

Raspberry Pi Software Configuration Tool (raspi-config) ├─────────────────┐
│ │
│ 1 Change User Password Change password for the current user │
│ 2 Network Options Configure network settings │
│ 3 Boot Options Configure options for start-up │
│ 4 Localisation Options Set up language and regional settings to match your location │
│ 5 Interfacing Options Configure connections to peripherals │
│ 6 Overclock Configure overclocking for your Pi │
│ 7 Advanced Options Configure advanced settings │
│ 8 Update Update this tool to the latest version │
│ 9 About raspi-config Information about this configuration tool │
│ │

│ <Select> <Finish>

2 Network Options Configure network settings 之 N2 Wi-fi 選項,輸入 可用無限網路之SSID 及Passwd
4 Localisation Options Set up language and regional settings to match your location 之"Configuring Locales" 選擇 zh_TW.UTF-8 UTF-8
A、鍵盤設定:
(1)、選擇標準的「Generic 105-key (Intel) PC」鍵盤。
(2)、選擇「English (US)」鍵盤配置。
(3)、選擇「No AltGr key」。
(4)、選擇「No compose key」。
(5)、最後設定是否要啟用 Control + Alt + Backspace 關閉 X server 的快速鍵功能。
(6)、
5 Interfacing Options Configure connections to peripherals 之SSH 及 VNC 及其他選項,儘可能設定為Enable
其他選項設定一系統需求並參考網路資料說明設定,最後,選擇 8 Update 執行 raspi-config 的更新
==================================================================
F、安裝中文輸入:
$ sudo apt-get install scim scim-tables-zh scim-chewing scim-gtk-immodule im-switch
完成安裝後,可重新開機,中文輸入法跟Windows輸入法差不多,CTL-Space Key可切換中英文模式
*******************************************************
G、Setting a static IP
1.有線 DHCP 設定
2 無線 DHCP 設定
3.有線固定IP設定 ,主要設定檔案: /etc/network/interfaces
參考網站:
https://sites.google.com/site/raspberyp ... ian-dedhcp
https://icodding.blogspot.tw/2016/02/raspberry-pi.html
設定 固定 IP: 學術網路,假定固定 IP為 140.A.B.C
編輯 /etc/dhcpcd.conf 檔案 (/etc/network/interfaces 不必更改):
$ sudo vi /etc/dhcpcd.conf
################## 以下為原始檔案內容
# A sample configuration for dhcpcd.
# See dhcpcd.conf(5) for details.

# Allow users of this group to interact with dhcpcd via the control socket.
#controlgroup wheel

# Inform the DHCP server of our hostname for DDNS.
hostname

# Use the hardware address of the interface for the Client ID.
clientid
# or
# Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361.
# Some non-RFC compliant DHCP servers do not reply with this set.
# In this case, comment out duid and enable clientid above.
#duid

# Persist interface configuration when dhcpcd exits.
persistent

# Rapid commit support.
# Safe to enable by default because it requires the equivalent option set
# on the server to actually work.
option rapid_commit

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Most distributions have NTP support.
option ntp_servers
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# A ServerID is required by RFC2131.
require dhcp_server_identifier
# Generate Stable Private IPv6 Addresses instead of hardware based ones
slaac private

# Example static IP configuration:
#interface eth0
#static ip_address=192.168.0.10/24
#static ip6_address=fd51:42f8:caae:d92e::ff/64
#static routers=192.168.0.1
#static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1

# It is possible to fall back to a static IP if DHCP fails:
# define static profile
#profile static_eth0
#static ip_address=192.168.1.23/24
#static routers=192.168.1.1
#static domain_name_servers=192.168.1.1

# fallback to static profile on eth0
#interface eth0
#fallback static_eth0
#### 以上為原檔案內容,加入以下固定IP 相關網址及網域IP
############# 2018.02.20 Added ############################
# A hook script is provided to lookup the hostname if not set by the DHCP
# server, but it should not be run by default.
nohook lookup-hostname

interface eth0
static ip_address=A.B.C.XX/24
static routers=A.B.C.254
static domain_name_servers=A.B.1.160 hook script is provided to lookup the hostname if not set by the DHCP
# server, but it should not be run by default.
nohook lookup-hostname

interface eth0
static ip_address=A.B.C.XX/24
static routers=A.B.C.254
static domain_name_servers=A.B.1.160
static domain_name_servers=8.8.8.8
##########################################
存檔以下,從新開機即可

4.無線固定IP設定
參考:http://wuhsiublog.blogspot.tw/2017/01/r ... ifiip.html,主要設定檔案: /etc/dhcpcd.conf

***************************************************
將滑鼠移至右上方網路狀態 Icon時,會顯示有線及無線網路狀態訊息:
wlan0 : Associated with XXXXX (如果是中華電信網路,XXXXX 就是 CHTXXXX,),如果已經連上網路,會再出現:
wlan0 : Configuared 192.168.X.X / 24
eth0 : Link is down
======================================================
Note:
家庭使用中華電信 Hinet 的 IP 資訊,可利用瀏覽器輸入網址:192.168.1.1
username:user
passwoed:user
就會看到以下資訊:
網際網路資訊:
-----------------------------------------
狀態: PPPoE Connected
IP 位址: 114.37.207.XXX
DNS: 168.95.192.1 168.95.1.1
區域網路資訊:
MAC位址: c8:6c:87:30:e1:ba
IP位址: 192.168.1.1 IP子網路遮罩: 255.255.255.0
DHCP: Server
DHCP 開始 IP:192.168.1.101 DHCP 結束 IP:192.168.1.200
無線網路資訊:
名稱( SSID): CHTXXXX
頻道: 1
安全模式: WPA-PSK
===================================================================
在terminal window 上輸入:
$ ifconfig
會顯示關於eth0、lo、及 wlan0的相關資訊

編輯 /etc/dhcpcd.conf file :
$ sudo vi /etc/dhcpcd.conf
會看到
# Example static IP configuration
# interface eth0
# static ip_address=192.168.1.15/24
# static routers=192.168.1.1
# static domain_name_servers=192.168.1.1
將上列資料改成:
interface eth0
static ip_address=192.168.1.101/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1
及設定固定IP 為:192.168.1.101
=========================================================================================
設定 Hinet Static IP 請參考: http://blog.itist.tw/2015/02/raspberry- ... ction.html
直接從官方套件庫安裝 PPPoE 撥接程式。
$ sudo apt-get -y install pppoeconf
並設定撥接參數:
$ sudo pppoeconf
然後,啟動撥接連線「pon」指令。
$ sudo pon dsl-provider
檢視網路狀態:
$ plog
$ ifconfig ppp0
若要斷線:
$ sudo poff
====================================================================
H、執行系統更新(update、upgrade、dist_upgrade)
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
$
====================================================================
如果上述工作都已經準備妥當,可將RPi重新開機,並將網路環境連結起來(Wi-Fi或 有線網路)
重新開機完成後,可用另一台電腦透過 VNC-Client或安裝Pietty的SSH連線,登入 RPi

回覆文章