2016年11月27日 星期日

[Arduino] Webduino smart 開箱

在Mopcon 2016 參加活動獲得的Webduino smart,

總算有時間來開箱一下,先截取一段官網對它的簡介:

Webduino Smart 是 2016 年推出的物聯網開發板,有別於過去馬克 1 號和 Fly 需要搭配 Arduino 才能運作,Smart 可以自行獨立運作,同時也具備連上網際網路 ( Internet ) 和透過區域網路 ( WebSocket ) 操控的能力,相信更能有效地應用在物聯網的開發和各種創意上!

資料來源:



來看一下照片 :


正面,除了接腳外有一個光敏電阻跟一個3色LED,以及USB接頭,一個Button。










































背面

一塊塊ESP8266







































贈品

USB轉Micro USB接頭、溫溼度感測器、小麵包板、蜂鳴器、杜邦線、LED紅和綠各1

































初始化設定

(1)插上USB供電後開始閃爍紅色LED,過了幾秒後,紅燈會亮起,

    停止閃爍(表示還沒接到Internet,這正常的)。

(2)接下來掃描一下Wi-Fi,會看一下個SmartXX (XX為數字)












(2)連接SmartXX,預設密碼為12345678 ,切換SSID到SmartXX時,

會稍微久一點,稍等一下喔。

(3)在瀏覽器輸入192.168.4.1(官方建議用chrome) ,會出現以下畫面








































輸入我上網的SSID及密碼,順便改一下我喜歡的Device ID








































按下SUBMIT,顯示Save OK以及相關設定資訊


























(4)拔下USB重插,此時注意一下你的Wi-Fi清單,你會發現SSID變成

Smart_xxx.xxx.xxx.xxx,你家裡的Wi-Fi分派給它的IP



























(5)接下來我們來更新Firmware吧,首先,拔電,然候在上電後,紅色LED熌爍其間,立刻按下USB旁邊的按鈕不要放,綠燈會先亮一下,直到藍燈閃爍,接下來等待綠燈熌爍結束,代表更新完成。




(6)再次把SSID切換到smart_xxx.xxx.xxx.xx,然候輸入192.168.4.1,你會發現,網頁長的

不太一樣了,Device ID變成固定的,Ver也變成3.1.0_1123b。









(7)輸入http://blockly.webduino.io/ 前往Webduino Blockly 編輯器 ,這裡注意一件事,


不要連接到https開頭Webduino Blockly 編輯器,這塊開發版在目前尚不支援HTTPS。


(8)點選開發版,選擇Smart
































接下來輸入IP


IP可以從SSID清單中得知

(9)在「元件模組」中,找到三色共陰LED

































































(10)在三色LED中,找到「設定顏色」





























(11)完整流程長這樣













接下來按下最右邊的執行程式




















此時你的Webduino smart 會亮起紅色( 背後的藍光是Wi-Fi Module的燈)



(12)換個顏色看看




















先按下最右邊綠色的停止


















再按下執行程式



變色了
































注意一件事情,如果你要用這塊webuino smart,在你使用積木寫程式的當下,你的電腦

必須和webduino smart在同一個網段。


參考資料:


「R」清除Console

輸入以下內容,就可以清除R Console

cat("\014")  


參考來源:

http://stackoverflow.com/questions/14260340/function-to-clear-the-console-in-r

2016年11月26日 星期六

「R」產生序列

產生1到10的序列

> s1<-1:10 
> s1
 [1]  1  2  3  4  5  6  7  8  9 10
> 

產生一個1到10,間隔為0.5的序列,透過seq函數


> seq(1,10,0.5)
 [1]  1.0  1.5  2.0  2.5  3.0  3.5  4.0  4.5  5.0  5.5  6.0  6.5  7.0
[14]  7.5  8.0  8.5  9.0  9.5 10.0
> 

產生一個指定數值的序列


> s3<-c(1,3,5)
> s3
[1] 1 3 5

產生重數值n,長度為M的序列,例如長度為10的序列,數頭全是1


 s3<-rep(1,10)
> s3
 [1] 1 1 1 1 1 1 1 1 1 1

rep也可以用來產生文字序列


> s3<-rep("G",10)
> s3
 [1] "G" "G" "G" "G" "G" "G" "G" "G" "G" "G"
> 

產生1到3之後是1到5的序列


sequence(c(3,5))
[1] 1 2 3 1 2 3 4 5
> 

產生長態分佈的隨機序列 ,例如數量30 ,平均值是0,標準差是1

 x<-rnorm(30,0,1)
> x
 [1] -2.2447060  1.0549524 -1.7044151  1.1469852  0.8830696  0.2083887
 [7]  0.8823955 -0.3976464 -0.5160780 -0.2907971  0.5140308 -0.6649935
[13] -0.5326976  2.1889057 -0.7649715 -1.6466003  0.6508996  1.9326675
[19] -1.0017353 -1.6557282 -1.3326705  1.1465761 -0.5932746 -0.3203247
[25] -1.0050817  0.1538962 -0.6863622 -0.4410272  1.6623734  0.4446147

透過hist(x)畫出上述的序列的直方圖






































probability density (常態分布的機密度函數)

常態分布機率密度函數均值為 變異數 (或標準差)是高斯函數的一個實例:






如果一個隨機變量服從這個分布,我們寫作  ~ . 如果並且,這個分布被稱為標準常態分佈,這個分布能夠簡化為











以上資料取自維基百科


> dnorm(0)
[1] 0.3989423
> dnorm(1)
[1] 0.2419707
> dnorm(2)
[1] 0.05399097
> dnorm(3)
[1] 0.004431848
> dnorm(4)
[1] 0.0001338302
> dnorm(5)
[1] 1.48672e-06


用Excel公式表示則如下

=1/SQRT(2*PI())*exp(-(X^2)/2)













































畫出圖形


 curve(dnorm,-6,6)


































cumulative probability function (累積分佈函數)

累積分布函數是指隨機變數小於或等於的機率,小於或等於的所有機率總和。


用機率密度函數表示為








常態分布的累積分布函數能夠由一個叫做誤差函數的特殊函數表示










標準常態分布的累積分布函數習慣上記為它僅僅是指 時的值,






將一般常態分布用誤差函數表示的公式簡化,可得:









以上資料取自維基百科

我們來產出 -6~6的累積分布函數

> x<--6:6
> pnorm(x)
 [1] 9.865876e-10 2.866516e-07 3.167124e-05 1.349898e-03 2.275013e-02
 [6] 1.586553e-01 5.000000e-01 8.413447e-01 9.772499e-01 9.986501e-01
[11] 9.999683e-01 9.999997e-01 1.000000e+00

你可以發現是愈來愈大,直到累加至1為止

畫張圖出來


curve(pnorm,-6,6)



































用excel的話是NORMDIST (x, mu, sigma, cumulative) 

EX:NORMDIST(x,0,1,TRUE)。



The value of quantile

qnorm這個函數是用取得上述pnorm(x)的x值,例如

> pnorm(0)
[1] 0.5
> qnorm(0.5)
[1] 0





參考資料:

https://zh.wikipedia.org/wiki/%E6%AD%A3%E6%80%81%E5%88%86%E5%B8%83

「R」用quantmod來捉台G店股票資料

首先安裝一下quantmod套件



 install.packages("quantmod")  











































接下來載入套件

 library("quantmod")  
























接下來呼叫Yahoo Finance API 來取得台G店(2330)股票資訊,並存入tw2330變數中

 tw2330 = getSymbols("2330.TW", auto.assign=FALSE)  




















把結果用圖示輸出 ,chartSeries 是quantmod套件所提供的繪圖函式,由於它本身

的底預設是黑色的,所以才要輸入theme=chartThem("white")換成白底

  chartSeries(tw2330, theme=chartTheme("white"))  








































參考資料:


Create Financial Charts
http://www.quantmod.com/documentation/chartSeries.html

RStudio上安裝 Quantmod套件抓股票資料