❶ 在樹莓派拍照如何將照片存在指定文件夾
1.0定義全局變數
string photoPath;//圖片保存的位置
string stuID;//獲得學生學號
2.0初始情況下判斷要保存的路勁是否存在try{if (!Directory.Exists(@"E:/學生黨員信息管理系統/Resource/photo/"))//當該文件夾不存在時{//創建文件夾
Directory.CreateDirectory(@"E:/學生黨員信息管理系統/Resource/photo/");}this.photoPath = @"E:/學生黨員信息管理系統/Resource/photo/";}catch (IOException ioEx){MessageBox.Show("初始化系統文件夾失敗:", "消息");return;}
3.0定義一個方法彈出一個對話框供用戶選擇圖片,
private void addPhoto(){OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "JPEG(*.jpg)|*jpg";
ofd.FilterIndex = 0;
ofd.ReadOnlyChecked = false;
if (ofd.ShowDialog() == DialogResult.OK){string photoPathCurrent = ofd.FileName;//獲得圖片絕對路徑
this.pictureBox1.Image = Image.FromFile(photoPathCurrent);
//判斷圖片是否符合要求
if (this.pictureBox1.Image.Width <= 145 && this.pictureBox1.Image.Width 110
&& this.pictureBox1.Image.Height <= 140 && this.pictureBox1.Image.Height 100){}else{MessageBox.Show("您添加的圖片不符合要求:寬110-140,高100-135,請重新添加","提示");
photoPath ="";
this.pictureBox1.Image = global ::學生黨員信息管理系統.Properties.Resources.系統默認相片;}}}
❷ 樹莓派查看所有文件用的是什麼命令
ome linux上的我的文檔,包含用戶名命名的文件夾
/lib 各種應用需要的代碼庫
/lost+found 一般情況下是空的,當系統非法關機後,這里就存放了一些文件
/media 放置可移動存儲驅動器,比如USB和CD
/mnt 用來手動掛在外部硬體驅動器或存儲設備
/opt 可選軟體文件夾,非系統部分的軟體將會放置在這里
/sbin 放置超級用戶使用的系統管理命令
/sys 放置操作系統文件
/tmp 放置臨時文件
/usr 放置用戶使用的程序
/var 虛擬文件,用於程序保存數據
2
樹莓派常用命令:
❸ 樹莓派-磁碟分區、格式化、掛載、卸載
之前筆記本換了一塊SSD,原來的那塊500GB的機械硬碟一直閑置沒用,最近淘寶買了一個硬碟盒子,把它當作移動硬碟來使,順便實際操作一下剛剛學的Linux的磁碟管理命令。輸入命令 cfdisk /dev/sda ,進入到cfdisk分區工具界面:將/dev/sda1格式化為 Ext4格式 ,命令為 mkfs -t ext4 /dev/sda1 ,同樣適用 Ext2格式 mkfs -t ext2 /dev/sda1 、 Ext3格式 mkfs -t ext3 /dev/sda1 。使用命令 mkfs -t ntfs /dev/sda2 想將/dev/sda2格式化為 ntfs格式 ,但是會報錯: mkfs: failed to execute mkfs.ntfs: No such file or directory 。解決方法為:需要安裝 apt-get install ntfsprogs ,但是目前還是會報錯 E: Package 'ntfsprogs' has no installation candidate 命令 mkfs -t vfat /dev/sda3 或者 mkfs -t fat /dev/sda3 或者 mkfs -t msdos /dev/sda3 。vfat 是 fat 的擴展,支持長文件名,mkfs.fat和mkfs.vfat 本質上是同個工具,生成的文件系統沒區別是因為 vfat 和 fat-32 在實現上是沒區別的,只是 vfat 通過 fat-32 中的一些隱藏路徑表示長文件名,而在 fat-32 中這些隱藏路徑會當成是空的。 使用命令 mount [options] <source> <directory> 即可。首先需要建立掛載點(即一個文件夾) mkdir /mnt/part1 ,然後將一個分區掛載在這個掛載點上 mount /dev/sda1 /mnt/part1 。使用 df -h 查看掛載情況當設備關機前,系統會自動卸載掛載的分區,因此手動掛載在下一次開機的時候有需要重新掛載。要實現開機自動掛載磁碟,需要在/etc/fstab文件中添加掛載信息。命令: umount [options] <source> | <directory>❹ 蘋果家庭怎麼用
利用樹莓派實現米家套件與蘋果Homekit對接的准傻瓜級操作技巧
智能家居&報警器的應用效果展示自動化策略推薦
設備准備篇
什麼是智能家居?有人說不就是感應燈么,10年前小區樓道里就有了,有什麼可說的。從效果上來看,的確真還差不多。但核心的區別在於智能家居可以實現感測器和設備之間的高度可編程性,最終可以實現什麼功能完全取決於使用者的想像力。
在開始之前首先要優化一下網路結構,圖中全部設備均處於同一網段,斐訊K2和Airport TC均為橋接模式。由於網路設備甚多,為了定時釋放緩存(也是為了省電)R8500、整個影音中心模塊以及Airport TC會在閑時進行「斷電維護」,此時僅有斐訊K2和監控相關設備在持續工作。因此對於需要24小時工作的樹莓派和米家網關來說,接在斐訊K2下最合適不過了。
此次智能家居搭建的必備設備為樹莓派3代B型、米家多功能網關(感測器配件根據自己的需求搭配購買),實現在同一網路下的蘋果Homekit對接,最終可用Siri語音控制。可選設備為Apple TV第四代,可實現遠程的家庭設備訪問控制及Homekit自動化控制,如果沒此需求的話可以省略。
樹莓派介紹
樹莓派是個高度集成化的一個迷你PC,在不到名片大小的PCB上集成了CPU、內存、網卡、Wifi、藍牙等晶元,雖然在性能上不要指望太高,但功能和擴展性相當的強大,是極客們開發的理想平台。
為了保護樹莓派的PCB及加強散熱,需要購買配套的亞克力盒子、散熱片、散熱器。
樹莓派共有4個USB 2.0、1個100M RJ45、1個HDMI、1個音頻輸出、一個TF卡槽,對於這種性能量級的產品來說夠用。電源介面為1個micro USB,供電規格為5V 2.5A,推薦使用iPad的充電頭,做工好電量足。
樹莓派系統安裝
想要實現用樹莓派將家中智能設備對接蘋果Homekit的方法有很多,主流的有三種:1.在樹莓派原生系統Raspbian中通過指令裝Hass控制項;2.安裝集成Hass控制項的Hassbian系統;3.安裝直接安裝操作極其簡單的圖形化Hass.io系統。三者最終效果沒區別,對於像我這種編程小白來說果斷選擇第三種方法。
第一步:找個16GB以上的TF卡,並進行格式化,Win格成FAT32、Mac格成ExFAT。(為毛不同系統下格式化的文件系統不一樣?因為本人在Mac下格成FAT總報錯格不了,就變通一下格成ExFAT了......)
第二步:將下載好的Hass.io系統鏡像用Etcher軟體刻錄進TF卡中。(和Ghost同理,個人猜測第一步無論格成什麼文件格式,在這一步都會變成鏡像中的文件格式)
第三步:把TF卡插在樹莓派上,樹莓派插上網線,開機等5分鍾。用在同一個網段的電腦訪問http://hassio.local:8123/ ,如果瀏覽器出現了與上圖相同的界面,恭喜你已經成功一半了。你可以喝個下午茶或吃個大餐慶祝一下去了。(界面里讓你等20分鍾,那是中關村時間,如果你的網路沒有進行科學上網的話,至少一個小時見。)
第四步:等你吃飽喝足撇完大條之後,刷新網頁就可以看到以上的界面了。
第五步:安裝基本插件Samba、藍牙、SSH,每一個安裝完之後都要將Auto update勾選上,並點擊下方的START。
第五步:Samba服務啟動之後,在Mac和Win的網路文件夾里就可以看到Hassio的共享盤了。
第六步:手機中打開米家APP找到米家網關的MAC地址和KEY。(怎麼把米家網關綁定在米家APP上,我就不教了,這個要是都搞不明白,說明Homekit不適合你)
xiaomi:
gateways:
- mac: 米家網關的mac地址(不要冒號)
key: 米家網關的key
第七步:用Atom軟體打開樹莓派config文件夾的Configuration.yaml配置文件,在最下面加入代碼。
第八步:重啟服務並確認已經連接上(首頁多了一個開關,點一下試試米家網關燈亮不亮,要是亮了說明安裝樹莓派系統安裝正確)
對接Homekit
Hass.io系統基本配置已經完成,可以對米家的設備進行控制了。但是總不能每次想控制都要登陸WEB頁面吧。下面就要開始對接iPhone的Homekit,來實現iPhone的快速控制。
第一步:添加Home-bridge的第三方源,添加成功後頁面下方會多下載選項。
第二步:安裝Home-bridge插件,並將自動更新打開。(如果你沒有科學上網的話,又是個漫長的等待,不要以為是網頁未響應了,它真的只是慢。不信你看看路由器的流量,是不是它還在努力下載呢)
第三步:打開樹莓派config→homebridge文件夾的Config.json配置文件,將host和password欄位填入樹莓派正確的IP地址和WEB管理界面的登錄密碼。並記住pin欄位的8位PIN碼(強烈推薦樹莓派和小米網關使用固定IP,要問怎麼在設備上設定?我也不會.......我是通過路由器DHCP保留地址功能實現的)
第四步:這時iPhone自帶的「家庭APP」已經識別到了HomeAssistant附件了,點擊圖標狂點下一步,過程中需要輸入8位PIN碼。米家網關已經關聯的設備會全部自動添加進去。
第五步:在家庭APP內、快捷菜單、Siri語音測試一下。不過此時有個影響體驗的問題,設備顯示為英文+序列號,如果只是菜單按鈕也就忍了,可Siri語音念得那叫一個銷魂呀。
第六步:改成中文名很簡單,在家庭APP中打開設備,以中文名稱重新命名即可。
添加HomeKit中樞
經過上述復雜的設定過程,智能家居已經初見眉目,理論上就該設定自動化策略了,由於現有智能家居配件全部為米家的,最簡單的方式自然是在米家APP中設定。不過正如本人在開頭所說,本人有一點核心需求為通用性和擴展性,如果哪天本人心血來潮又買了個BroadLink RM Pro,要想實現BroadLink和米家設備的聯動,只能在HomeKit平台上設定。屆時為了保證不出BUG,米家APP中設定的自動化策略,需要重新設定在HomeKit上。為了減少未來重復勞動,乾脆就一步到位,建立HomeKit中樞。
為了讓大家更好的理解,本人從度娘借來一張圖。通過上圖可以看到智能家居的結構圖,簡單概括起來就是:想要通過米家APP實現自動化,只需米家網關24小時開機就好了;想要增加Siri語音控制功能時,樹莓派需要開機,此時Homekit只是iPhone中的一個服務;想要通過Homekit實現自動化和遠程訪問,就需要一個Apple TV4或iPad作為Homekit服務的硬體載體,和米家網關、樹莓派一起24小時開機。(PS:Apple TV4不會截屏,下面就用iPad給大家做示範了,步驟差不多)
第一步:分別在iPhone和iPad上iCloud選項中開啟「iCloud鑰匙串」和「使用安全碼批准」
第二步:在設置中的家庭選項卡中,開啟「將此iPad用作家庭中樞」。打開家庭APP就可以看到自動化選項被激活啦。
自動化策略推薦
枯燥乏味的系統安裝調試階段終於結束,真正燒腦的工作才剛剛開始,接下來就到了自動化策略的設定階段。
設定本身並不難,只需要選好在什麼位置、什麼時間段、什麼感測器狀態、觸發什麼設備即可,難點在於要發揮想像力明確自己的需求。
❺ 一 . 樹莓派A20 基本環境搭建 1
我的實驗環境:
1.交叉編譯工具鏈:gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux(4.8.2).tar.xz
2.SDK文件:MarsBoard-A20-Linux-SDK-V1.1.tar.bz2
在安裝gcc-arm-linux-gnueabi的時候,會自動安裝上gcc-4.6-arm-linux-gnueabi,如下圖所示:
第二個文件的安裝很重要,盡管後面提示的編譯錯誤,缺少的是arm-linux-...,但是安裝這個文件還是挺好用的。
根據前面安裝的一些安裝包,其實本節的交叉編譯工具鏈可以不用操作。因為已經包含了本節所做的了。
我得先將vim改一下,否則按住上下左右,會出現A,B,C,D。
再/etc/profile最後一行添加內容:
然後:
這里做一些簡要的說明,在網址: 鏈接 上有一些說明,從說明中,我們可以看到我們用的sdk的架構。
pack文件夾
選擇2,server版本。
之後:
能找到的livesuit_marsboard_a20_debian.img就是生成的鏡像文件。如果要修改名字,可以:
這裡面就包含了image.cfg,找到裡面的一項:
修改為其他的名字即可。
選擇2,server版本。
1.若出現如下報錯:
可以:
如果出現:
但是其實這些文件都是有的,可以不妨:
再次編譯,則問題如下:
仔細找編譯的shell輸出文件,發現是rootfs/下的gz文件找不到,這是因為我做前面的操作的時候,希望生成自己的rootfs_my.tar.gz文件。現在我重新將該文件放到rootfs/下,再次編譯,我將最後的結果放在下面:
這樣表示成功了。
下面列入生成的鏡像:
livesuit_superpi3.img即是。
1.我在做上面的操作的時候,夾雜的使用了兩個開發板,一個是marsboard出品的a20開發板,另外一個是風火輪出品的a20樹莓派3卡片電腦,說實在的,看起來風火輪附帶板子資料挺多,但是其真正寫的資料可沒用心做,實在不是一個榜樣,在該開發板上做非核心開發,是可以的,但是做研發,還是需要做考量。
燒寫成功後,列印的內容如下,作為日誌信息,留作以後分析:
❻ 樹莓派里的文件復制到本地-scp命令
使用scp命令拷貝文件非常好用,我們可以通過scp命令把本地文件上傳到樹莓派,也可以把樹莓派里的文件拷貝到本地。
本地系統: MacOS
樹莓派的IP地址: 192.168.123.159
樹莓派用戶名: pi
本地文件夾位置: /Users/yushengtan/desktop/
樹莓派文件夾位置: /home/pi/download/Desktop/
假如我們要把本地桌面上的文件1.txt拷貝到樹莓派伺服器桌面上,可以使用命令: scp <本地文件夾及文件> <遠程用戶名>@<遠程ip>:<遠程文件夾>
執行命令後按要求輸入ssh登錄密碼即可;
支持文件夾拷貝,只需在scp 後添加一個 -r 參數即可。
加入我們要把樹莓派桌面上的文件2.txt拷貝到本地,可以使用命令: scp <遠程用戶名>@<遠程ip>:<遠程文件夾> <本地文件夾及文件>
scp同樣支持文件夾拷貝,只需在scp 後添加一個 -r 參數即可,
如把本地桌面目錄拷貝到遠程樹莓派桌面:
❼ 樹莓派搭建文件伺服器
https://www.raspberrypi.org/downloads/raspberry-pi-os/
安裝 Etcher 之後啟動 Etcher,插入 SD 卡、選擇要安裝的 img 文件、選擇 SD 卡對應的磁碟分區
https://www.balena.io/etcher/
① 新建一個ssh空白文件,放到root目錄下,樹莓派開機會自動啟用
② 網路優先選擇有線網路
③ 無線網路
將刷好 Raspbian 系統的 SD 卡用電腦讀取。在 boot 分區,也就是樹莓派的 /boot 目錄下新建
具體詳情看下面
https://shumeipai.nxez.com/2017/09/13/raspberry-pi-network-configuration-before-boot.html
方法1:利用路由器軟體查看IP地址
方法2:
ssh連接默認用戶名:pi 密碼:raspberry
方法3:IP Scanner
1.切換 root許可權 sudo su
2.編輯下列文件
連接raw.githubusercontent.com失敗
step1 :
在 https://site.ip138.com/raw.Githubusercontent.com/
輸入raw.githubusercontent.com查詢IP地址
step2 :
sudo nano /etc/hosts
你查到的ip地址,香港的就行 raw.githubusercontent.com
比如:
151.101.76.133 raw.githubusercontent.com
OpenMediaVault項目地址:
https://github.com/OpenMediaVault-Plugin-Developers/installScript
執行安裝腳本:
step1:
輸入樹莓派的IP地址
初始用戶名:admin
密碼:openmediavault
step2:
1.連接硬碟
2.文件系統—>卸載硬碟
3.磁碟—>擦除
4.文件系統—>新建 文件系統選擇EXT4
5.掛載—>應用
6.共享文件夾—>新建一個文件夾 設置許可權
7.SMB/CIFS —>啟用
8.共享—>添加共享
mac登陸
前往:連接伺服器 smb://樹莓派的ip地址
windows
我的電腦—>右鍵—>映射網路驅動器—>找到共享的文件夾