前言: 話說前陣子爸爸家陽台不斷出現米奇老鼠,立刻清理陽台所有東西,然後又跟市政部門反映問題,可是情況還沒有好轉,米老鼠來完一隻又一隻,我爸陽台在老鼠界應該是網紅打卡聖地(誤),要不然就是米奇老鼠版米奇林三星餐廳(?) 雖然我們抓到了三隻,到上兩個禮拜為止還有至少一隻一直抓不到,每天淩晨還會來吃事後煙留下老鼠屎,真_北。 這隻老鼠對傳統攻擊有抗性,有IT9朋友前陣子用Raspberry pi自製了一台electric mouse trap ,用pi的超聲波雷達放在鞋盒裡,鞋盒裡有一堆食物,底部佈了鐵網,偵測到有老鼠進去以後立即關門通9V電,通個1分鐘再放牠離開,大推我自己也造一台 (Youtube片搜尋一大堆,人類真變態啊,朋友好變態啊)。可是我覺得這樣又好像有點太殘忍,不如先偵測牠們什麼時候來,嚇嚇牠們看看有沒有效果再說吧。 目的: 用Raspberry pi及手上有的感測器弄一隻放陽台用來偵測和嚇嚇老鼠的東西,並把紀錄圖像化到雲端給老爸使用。 邏輯及設計: 當老鼠進入偵測範圍,Motion Sensor偵測到生物活動Raspberry pi 處理來自Motion Sensor的訊號,如果夠強的話開始準備作出回應 Raspberry pi在Angry cats sounds中隨機選出叫聲,再經由Speaker輸出貓叫聲 Raspberry pi指示強光元件發出強光束照射目標 把偵測計數上傳到雲端圖表 材料: Sensor 在網路上看了一些Raspberry pi wild animal camera ,很多也是用Motion Sensor先偵測動物再來,我用的是PIR Motion Sensor被動式紅外線感測器,有低耗電成本便宜的好處。[1],而且可手動調整靈敏度及反應時間。 PIR Motion Sensor就是下面這個 圖片來源: learn.adafruit.com 可手動調整敏感度還有反應時間,這個有點不好調,要試好多遍才找到最佳位置。 可以在Raspbian中輸入pinout查詢GPIO避免插錯 圖片來源: learn.adafruit.com . 一台Raspberry pi 這次使用較舊的Raspberry pi model B+ 萬一老鼠生氣被咬爛錢包也不太痛 . ...
如何建立Class(類別)
基本概念
如果想要多說明那些東西請留言給我^_^一齊研究研究~!!
Class
什麼是Class?
我想習慣寫OO(物件導向, Object Oriented)的人都非常清楚Class的用途。
Public, Private, protected的區別
- 如果 class 裡宣告 public , 表示外部程式呼叫時, 可以呼叫它(可以呼叫 name);
- 如果 class 裡宣告 private ,外部程式就無法呼叫它(無法呼叫 addr), 只能在 Member class 裡呼叫, 有時您會需要在 class 裡寫一些 function 供 class 使用, 此時就可以考慮宣告成 private。
- 如果 class 裡宣告 protected, 介於Public and Private之間,不同在於它除了可以在同一個Class存取外,還可以給被繼承的子類別存取。
例如下面的例子,Class3就可以使用Class1的Protected:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
{ { ... } } ... } }
1 2 3 4 5 6 7
{ } }
- 類別(Class) 的外殼
- 建構子(Constructor)
- 功能:通常用來初始化物件, 如 Array a = new Array[3];
- 名稱一定和類別名稱相同。
- 方法 (Method)
- 包含一系列陳述式的程式碼區塊。在 C# 中,
- 每個執行的指令是完成於方法的內容中。
- 若沒有傳回型別,則要寫 void。
- Destructor (選擇性存在)
- 下面是一個Class的例子
- test.cs
- Form1.cs
- Class不只存在於 Class檔案內, 也存在於程式中任何一部分
- 如: 頁面本身就是一個Class, Button Click就是這個Class入面的一個method.
- 可參考這裡: http://www.allenkuo.com/EBook5/view.aspx?TreeNodeID=7&id=420 學 ASP.NET 要不要懂什麼是 Class ?
- 有/沒有傳入參數
- 有/沒有回傳值
- 例子
public, private, protected的差異
類別(Class) 的組成
參考資料:
http://kingjoy1235.pixnet.net/blog/post/30010009-c%23-method-,property-%E7%AD%89%E5%9F%BA%E7%A4%8E%E8%AA%9E%E6%B3%95%E6%AF%94%E8%BC%83 C# method ,property 等基礎語法比較
http://www.allenkuo.com/EBook5/view.aspx?TreeNodeID=7&id=420 學 ASP.NET 要不要懂什麼是 Class ?
http://www.csharp-station.com/Tutorials/Lesson07.aspx
會持續更新.....
Comments
Post a Comment