Arduinoを介した新しいGmailメッセージの表示

1週間前に、Arduino Duemilanoveの完全な類似品であるFreeduino 2009の小包を受け取りました。





簡単な例を示したいです。 この例では、ArduinoがGmailの新しいメッセージについて通知します。 LCDディスプレイを購入するまで、LEDは表示として点滅します。



アプリケーションは2つの部分で構成されています。 PCの最初の部分は、n分ごとにcronで実行され、メッセージをチェックし、シリアルポート上の未読メッセージの数をArduinoに送信するPythonスクリプトです。 Arduinoの2番目の部分はskatechで、PCから送信された値をチェックし、文字が0を超えるとLEDが点滅し始めます。





LED接続図:





Pythonスクリプト、PySerialライブラリが動作するために必要です:



Copy Source | Copy HTML<br/> <br/> import urllib, re, serial<br/> <br/>gml = '' <br/>username = "***" <br/>password = "***" <br/>adr = "https://" +username+ ":" +password+ "@mail.google.com/mail/feed/atom" <br/>cont = urllib .urlopen(adr) <br/>s = cont.read() <br/> <br/>reg = re . compile (r "<fullcount>\d+</fullcount>" ) <br/> <br/>gmlcnt = reg.search(s).group()<br/>reg2 = re . compile (r "\d+" ) <br/>gml = reg2.search(gmlcnt).group()<br/> <br/>ser = serial.Serial( '/dev/ttyUSB0' , 9600 )<br/>ser.write(gml)<br/>ser.close() <br/>





Arduinoのスケッチ:



Copy Source | Copy HTML<br/> <br/>int ledPin = 13 ; <br/>int mail = 0 ;<br/>int i = 0 ;<br/> <br/>void setup(){ <br/> Serial.begin( 9600 );<br/> pinMode( ledPin, OUTPUT ); <br/>}<br/> <br/>void led_blink(){<br/> if ( i == 1 ){<br/> digitalWrite( ledPin, HIGH );<br/> delay( 500 );<br/> digitalWrite( ledPin, LOW );<br/> delay( 1000 );<br/> }<br/> delay( 1000 );<br/>}<br/> <br/>void loop(){ <br/> if ( Serial.available( ) > 0 ){<br/> mail = Serial.read();<br/> if ( char(mail ) != '0' ){<br/> i = 1 ;<br/> }<br/> else{<br/> i = 0 ;<br/> digitalWrite( ledPin, LOW );<br/> } <br/> }<br/> led_blink();<br/>} <br/>





crontabでは、スクリプトへのパスと開始間隔を指定します。 Arduinoで、スケッチを記入し、新しいメッセージを受信したときにLEDの点滅を楽しんでください。



All Articles