發表文章

目前顯示的是 4月, 2016的文章

PHP教學 - 定時一段時間登出系統做法

自動登出方式 一、html做法 <META HTTP-EQUIV="REFRESH" CONTENT="600;URL=logout.php"> 二、javascript做法 <script> var oTimerId; function Timeout(){ alert("\n您好\n您可能已離開!\n很抱歉!!請重新登入系統\n謝謝!!"); location.href= ('logout.php'); } function ReCalculate(){ clearTimeout(oTimerId); oTimerId = setTimeout('Timeout()', 1 * 60 * 1000); //js 是用毫秒計算 } document.onmousedown = ReCalculate; document.onmousemove = ReCalculate; ReCalculate(); </script> 三、php做法 正常的php.ini,session 的預設存活時間為 24 分鐘(1440秒) session.gc_maxlifetime = 1440 但如果時間到了,session 卻還存在,沒有被刪除是怎麼回事呢 ? 原來垃圾收集者(GC),並不是一定時間到就會工作,而是是透過機率來工作。 在 php.ini – GC的預設值如下: session.gc_probability = 1 session.gc_divisor = 100 這代表著,有100分之一的機率會清除session 我們只要將其更改為下方,,並重啟 httpd 服務: session.gc_maxlifetime = 216000 session.gc_probability = 1 session.gc_divisor = 1 就代表 存活24hrs並100%清除session 如果要設定SESSION的連線時間(例如設定24小時),並讓SESSION在設定時間過期後自動被刪除,需在php.ini中設定下列參數: session.cookie_

Arduino - 利用 pwm 來控制一般 pc 風扇

圖片
最近因為工作關係遇到一個需求需要控制風扇的轉速與相關應用,於是正式踏入 Arduino 研究領域,因為本身是非電子科出身,許多相關基本電學基礎及電子學均缺乏,也藉此從零開始學起,包含基礎電子電路、歐姆定律、電阻、電容、二極體、電晶體、麵包板、洞洞板、烙鐵焊接、vcc、gnd、gpio、直流電、交流電、直流馬達、步進馬達、伺服馬達、各類感測器 sensor 模組等,不過基本電學、電子學、電工、工業室內配線、工業配線等有太多專業知識,是需要不斷的去學習了解的,在此就不一一介紹,回過頭來思考本次專案,我們將利用 Arduino uno 板來連接 pc 風扇並控制其轉速,這邊可能需要注意,pc 風扇有分為 cpu 風扇、機殼風扇,pin腳有4pin及3pin,如果只想要讓風扇轉動,3pin即可,僅需在 Arduino 5v pin 腳位(vcc電源)及 gnd(接地) pin 腳位插上電線(通常是杜邦線),那麼風扇就可以轉動,但無法控制轉速,於是我們來研究 4pin 風扇,這四個 pin 腳會包含 vcc、gnd、sensor、pwm等,其中sensor 我們不需要只需要 pwm、vcc、gnd詳細說明如下 Arduino uno *1 4pin fan *1 可變電阻 *1 麵包板 *1 顯波器 *1 杜邦線 *13 程式碼如下 int fan = 9; //設定 Arduino 風扇腳位在 9 pin void setup() {  // 初始化傳輸速率設定為9600  Serial.begin(9600);  pinMode(fan, OUTPUT); //定義 pinmode 為 pin 9 OUTPUT 輸出 } void loop() {  // 讀取輸入 on analog pin 0:  int pot = analogRead(A0); //設定A0 值為讀取類比訊號  int fan_speed = pot * (255 / 1023.0); //這個公式將會計算風扇速度的pwm輸出介於 0-255  analogWrite(fan,fan_speed); //我們設定 9 pin 為 pwm 風扇速度輸出  Serial.println(fan_speed); //利用 Serial.println函數可以在