數位天堂

Nokia:科技始終來自於人性; 拜耳:如果文明不能使我們更相愛,那科技便失去意義!
歡迎您的加入,讓我們一起討論科技與環保的整合應用...

您尚未登入。

#1 2008-10-20 22:35:39

chs007
精靈
註冊日期: 2008-01-30
文章數: 24
目前積分 :   

Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

很久沒回來了!!看到這邊有很多好朋友分享自己的作品,自己心也癢癢想來惡搞一下自己的WL500w

目前的想法是....利用WL500W外加ARDUINO微處理器來遠端控制電器設備

ARDUINO是用USB TO serial的方式跟WL500w溝通

所以WL500w要加裝ftdi DRIVER(GOOGLE了一下,要讓USB TO serial的話要加裝kernel-module-ftdi-sio,kernel-module-usbserial)

http://www.nslu2-linux.org/wiki/Periphe … erial#ftdi

然後裝LIGHTHTTPD+PHP+DIO外掛(輸出字串給ARDUINO控制)+Mysql(紀錄事件用)

管理上方便可能再加裝samba和ssh

想請教版大,這樣WL500w頂的住嗎??又,這台機器目前還在服役中,可能要再去敗一台機器,如果這台罩不住,還有適合的機子嗎?




離線

 

#2 2008-10-20 23:50:25

hippo
天使
註冊日期: 2008-10-07
文章數: 1562
目前積分 :   20 

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

在不care cpu的運算速度下(也沒得換), RAM變成關鍵. 雖說有swap, 但也僅是輔助. 所以要看您執行您要的程式後, 剩餘的RAM會影響您的使用感覺(包含原本Router的功能)
LightTPD+PHP無可避免, 但database部分, MySQL會比SQLite耗更多資源. 如果心臟不夠強, 將server拆開(web, database, samba等), 將負載分屬不同機器會好一些.
WL-500w是否適用, 站長比較有經驗, 我還沒用過這麼高檔的機器. 真羨幕...dribble



離線

 

#3 2008-10-20 23:52:34

Aven
天使
來自: 數位天堂
註冊日期: 2007-07-15
文章數: 2266
網站

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

我不懂 ARDUINO,哪裡有進一步的資料?
如果只是透過 USB 傳送 I/O 控制訊號,那麼可能連 WL-HDD 或 WL-500g 都可以輕鬆勝任,WL-500W 絕對沒問題。
你這構想很棒,如果成功記得上來分享。



技術問題請於論壇上集眾人之力公開討論,感恩 thankgod

離線

 

#4 2008-10-21 03:42:59

chs007
精靈
註冊日期: 2008-01-30
文章數: 24
目前積分 :   

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

Aven 提到:

我不懂 ARDUINO,哪裡有進一步的資料?
如果只是透過 USB 傳送 I/O 控制訊號,那麼可能連 WL-HDD 或 WL-500g 都可以輕鬆勝任,WL-500W 絕對沒問題。
你這構想很棒,如果成功記得上來分享。

ARDUINO,算一種開放式的硬體,站上有公佈電路圖和所需要的電子元件,程式比單晶片簡單(類似c語言),配合一些感測器就可以做出互動式的裝置出來
http://www.arduino.cc/
他是透過rs232來和PC溝通的,不過也有出usb版和藍牙版的arduino,我比較懶...直接買現成做好的usb版來使用,藍牙通訊不談,usb版本的arduino,是透過ft232這顆晶片轉成rs232訊號做溝通的,所以wl500w機器只要可以安裝ftdi(USB to rs232)成功再加上PHP外掛dio(rs232通訊外掛),我覺得是可以成功控制才對.

承蒙版主看的起,如果做成功!我一定放上來跟大家分享!


離線

 

#5 2008-10-21 04:20:29

chs007
精靈
註冊日期: 2008-01-30
文章數: 24
目前積分 :   

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

hippo 提到:

在不care cpu的運算速度下(也沒得換), RAM變成關鍵. 雖說有swap, 但也僅是輔助. 所以要看您執行您要的程式後, 剩餘的RAM會影響您的使用感覺(包含原本Router的功能)
LightTPD+PHP無可避免, 但database部分, MySQL會比SQLite耗更多資源. 如果心臟不夠強, 將server拆開(web, database, samba等), 將負載分屬不同機器會好一些.
WL-500w是否適用, 站長比較有經驗, 我還沒用過這麼高檔的機器. 真羨幕...dribble

hippo兄說的是,會看上他是因為省電,可以取代電腦,epc都還要34W,如果要分擔負載的話,不如用epc還比較適合一些,由於是要拿來控制電器的,不是要拿來架站,我想網路負載不會很大才是,不過要掛這些sever還是要試試看才知道了!也許改記憶體是個好方法......但是我焊接功力沒這麼強阿!!orz
,但是這台沒改機的時候真是被我幹到爆,連msn都上不了,寫信給工程師也說不出個所以然,要我送修(開玩笑,機器在日本國際郵資很貴阿....),所以二話不說馬上灌第三方韌體,結果什麼問題都沒了...機器重獲新生後,曾經被拿來架站,後來被我當成bt機和動物機過,不過沒辦法下載大檔案,還有可能是因為日本這邊網路速度快,常常會快到當機,後來只好放棄讓他安安穩穩的當無線ap,後台1台電腦掛bt加驢子(算公用空間,大家一起使用,透過web控制),再外加5台電腦同時上網,一直跑到今天還沒當過機....YA



離線

 

#6 2008-10-21 08:29:46

hippo
天使
註冊日期: 2008-10-07
文章數: 1562
目前積分 :   20 

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

Aven 提到:

我不懂 ARDUINO,哪裡有進一步的資料?
如果只是透過 USB 傳送 I/O 控制訊號,那麼可能連 WL-HDD 或 WL-500g 都可以輕鬆勝任,WL-500W 絕對沒問題。
你這構想很棒,如果成功記得上來分享。

http://arduino.cc/en/uploads/Main/arduino316.jpg
Wikipedia
露天
善用Open, Free Source, 發揮想像力, 酷.yes


離線

 

#7 2008-12-15 00:52:48

chs007
精靈
註冊日期: 2008-01-30
文章數: 24
目前積分 :   

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

抱歉讓各位久等了~過了這麼久還是沒有消息....
事實上我還是有進度的!!

目前是快要完成的階段....
不知道站長對php熟不熟?

ARDUINO裡面的程式已經寫好,並且成功的利用php控制電燈,不過這不是用wl-500w,而是在windows上
在windows上我是用dio_open的方式來開啟COM PORT的程式碼如下:
function sendToArduino($string){
    $fd = dio_open('COM4', O_RDWR);
    dio_write($fd,$string);
    dio_close($fd);
}
//讀取ARDUINO的狀態
function readArduinoStat(){
    $fd = dio_open('COM4', O_RDWR);
    dio_write($fd,"se");//<~~~傳se是告訴arduino送出目前的狀態
    sleep(0.5);
    $str = dio_read($fd,19);
    dio_close($fd);
    return $str;
}
在我把arduino移到WL500底下後,機器可以正確的認出arduino(竟然不用裝ftdi,直接顯示/dev/usb/tts/0),使用echo "string" > /dev/usb/tts/0,也可以控制LED,
但是這裡的PHP沒有dio函式可以使用....

目前想到的解決方法有兩個....
1.灌DIO函式庫<~但是不知道要如何編譯阿?...在WINDOWS下直接用dll就可以了,LINUX下面要如何安裝呢?

2.改寫程式碼:
今天我嘗試的把dio改成fopen但是在"讀取狀態"那一邊不知道出了哪個問題??
$fd=fopen("/dev/usb/tts/0",'w+');
fwrite($string,$fd);
fclose($fd);
這樣命令送到arduino是OK的.問題出在read上面
function readArduinoStat(){
    $fd = fopen("/dev/usb/tts/0", 'w+');
    fwrite($fd,"se");//<~~~傳se是告訴arduino送出目前的狀態
    sleep(0.5);
    $str = fread($fd,19);
    fclose($fd);
    return $str;
}
這樣就沒有反映了,只有看到arduino的tx/rx一直閃阿閃,不知道我應該要注意哪邊呢??


離線

 

#8 2008-12-15 10:33:39

Aven
天使
來自: 數位天堂
註冊日期: 2007-07-15
文章數: 2266
網站

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

牽涉到 php 與硬體控制,這就要請這方面的高手來支援了,看來離成功已經不遠了 yes



技術問題請於論壇上集眾人之力公開討論,感恩 thankgod

離線

 

#9 2008-12-16 13:12:11

hippo
天使
註冊日期: 2008-10-07
文章數: 1562
目前積分 :   20 

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

1. 如果不呈現在網頁, 用shell script, 直接將控制命令送到Router機板上的com2(dev/tts/1), 與外部電路板連接. 或送到USB to Serial.
2. 可由網頁(PHP)執行shell script, 間接控制I/O.
3. 若要由網頁(PHP)直接控制I/O, dio extension目前可能需要自己編譯. 使用QEMU模擬mips, 或在Router上編譯.
4. Python, Ruby, Java是另外的選擇.


離線

 

#10 2008-12-16 17:39:37

chs007
精靈
註冊日期: 2008-01-30
文章數: 24
目前積分 :   

Re: Lighthttpd+PHP 5.2+Mysql+SAMBA?有可能嗎?

感謝HIPPO大的提示,目前1,2都已經可以做出來了,3的話還要編譯可能有點複雜阿!
目前我比較傾向用FOPEN的方式改寫PHP程式碼(因為只有兩個FUNCITION而已,我想可能是機器fread的時間剛好沒有配在一起造成的),省時省事....
不過要如何在ROUTER上面編譯程式我還是會試試看的....
4的話....對這些不熟哩...哈哈


離線

 

相關討論主題

主題 回覆 點閱 最後發表
1 5883 2021-02-17 14:44:19 作者 patsm00re18
0 3193 2020-05-29 22:52:48 作者 a00403a
2 15450 2011-11-16 22:34:25 作者 hollowaysxp
1 12681 2011-11-15 20:32:59 作者 changeway
2 13248 2011-11-11 09:28:34 作者 wchpei

友情連結

論壇頁尾

Powered by PunBB
© Copyright 2018 Rickard Andersson
RSS Feed