สารบัญ:

Twitter และ Arduino Yún: 3 ขั้นตอน
Twitter และ Arduino Yún: 3 ขั้นตอน

วีดีโอ: Twitter และ Arduino Yún: 3 ขั้นตอน

วีดีโอ: Twitter และ Arduino Yún: 3 ขั้นตอน
วีดีโอ: Linux на Arduino. Платформы Tian, Yún и Yún mini. Железки Амперки 2024, พฤศจิกายน
Anonim
Twitter และ Arduino Yún
Twitter และ Arduino Yún

หลังจากใช้เงินเกือบ 100 ดอลลาร์ไปกับ Arduino Yún เพื่อดูว่ามีปัญหาอะไร ดูเหมือนเป็นความคิดที่ดีที่จะค้นหาและสาธิตการใช้งานบางอย่าง ดังนั้นในบทความนี้ เราจะตรวจสอบว่า Yún ของคุณสามารถส่งทวีตได้อย่างไรโดยใช้ภาพร่างตัวอย่างง่ายๆ – และบทแนะนำชุดแรกสำหรับ Arduino Yún หลายๆ บท เริ่มต้นใช้งาน หากคุณยังไม่ได้ดำเนินการ ตรวจสอบให้แน่ใจว่า Arduino Yún ของคุณสามารถเชื่อมต่อกับเครือข่ายของคุณผ่าน WiFi หรือสายเคเบิล – และรับบัญชี Temboo (เราดำเนินการผ่านสิ่งนี้ที่นี่) และคุณต้องการ (ในขณะที่เขียน) IDE เวอร์ชัน 1.5.4 ซึ่งสามารถดาวน์โหลดได้จากเว็บไซต์ Arduino สุดท้ายนี้ หากคุณไม่มีบัญชีทวิตเตอร์ – ไปสมัครเลย

ขั้นตอนที่ 1: ส่งทวีตจากYún.ของคุณ

ส่งทวีตจากYun.ของคุณ
ส่งทวีตจากYun.ของคุณ
การส่งทวีตจากYun.ของคุณ
การส่งทวีตจากYun.ของคุณ

ส่งทวีตจากYúnของคุณไปยัง Arduino และ Temboo 99% ของงานได้เสร็จสิ้นแล้วสำหรับคุณ ในการส่งทวีตต้องใช้ร่าง Arduino ไฟล์ส่วนหัวที่มีรายละเอียดบัญชี Temboo ของคุณ และจำเป็นต้องลงทะเบียนแอปพลิเคชันในคอนโซลการพัฒนา Twitter อย่าตกใจ เพียงทำตามคำแนะนำ "รับการตั้งค่า" จากหน้าต่อไปนี้. เมื่อคุณทำ - ตรวจสอบให้แน่ใจว่าคุณได้ลงชื่อเข้าใช้เว็บไซต์ Temboo แล้ว เพราะจะเติมไฟล์ส่วนหัวที่มีรายละเอียด Temboo ของคุณให้คุณ ในระหว่างขั้นตอนการสมัคร Twitter อย่าลืมบันทึกการตั้งค่า OAuth ซึ่งจะปรากฏในแท็บ "เครื่องมือ OAuth" ในหน้านักพัฒนา Twitter เช่นในภาพด้านบน จากนั้นการตั้งค่าเหล่านี้จะถูกคัดลอกไปยังทุกภาพสเก็ตช์โดยเริ่มจาก line:constStringTWITTER_ACCESS_TOKEN=เมื่อคุณบันทึกภาพสเก็ตช์ ตรวจสอบให้แน่ใจว่าคุณวางไฟล์ส่วนหัวที่มีชื่อ TembooAccount.h ไว้ในโฟลเดอร์เดียวกับภาพสเก็ตช์ของคุณ คุณรู้ว่าสิ่งนี้ประสบความสำเร็จเมื่อเปิดแบบร่าง เนื่องจากคุณจะเห็นไฟล์ส่วนหัวในแท็บที่สอง เช่น ในรูปภาพที่สองในขั้นตอนนี้ สุดท้าย หากคุณแชร์รหัสกับผู้อื่น ให้ลบ OAuth และ TembooAccount ของคุณ h รายละเอียดมิฉะนั้นพวกเขาสามารถส่งทวีตในนามของคุณได้

ขั้นตอนที่ 2: มันใช้งานได้หรือไม่

มันทำงาน?
มันทำงาน?

ตกลง – คำเตือนเพียงพอ หากคุณสร้างบัญชี Temboo สำเร็จแล้ว รับรายละเอียด OAuth ของ Twitter ป้อนทั้งหมดลงในไฟล์สเก็ตช์และส่วนหัว จากนั้นบันทึก (!) และอัปโหลดภาพสเก็ตช์ของคุณไปยัง Arduino Yún - ทวีตสั้นๆ จะปรากฏบนไทม์ไลน์ของคุณสำหรับ ตัวอย่างในภาพแรกด้านบน หากไม่มีอะไรปรากฏบนฟีด Twitter ของคุณ ให้เปิดจอภาพแบบอนุกรมใน IDE และดูว่าข้อความใดปรากฏขึ้น มันจะตอบกลับข้อความแสดงข้อผิดพลาดจาก twitter ซึ่งโดยทั่วไปจะบ่งบอกถึงปัญหา

ขั้นตอนที่ 3: การส่งข้อมูลของคุณเองในรูปแบบทวีต

การส่งข้อมูลของคุณเองในรูปแบบทวีต
การส่งข้อมูลของคุณเองในรูปแบบทวีต

ต่อไป มาดูวิธีการส่งทวีตพร้อมข้อมูลของคุณเองกัน ในภาพร่างตัวอย่างต่อไปนี้ เราจะส่งค่าที่เกิดจาก analogRead(0) และข้อความรวมกันเป็นหนึ่งบรรทัด อย่าลืมข้อความ Twitter (ทวีต) มีความยาวสูงสุด 140 ตัวอักษร เราได้ย้ายการส่งทวีตทั้งหมดไปไว้ในฟังก์ชันเดียว tweet() ซึ่งคุณสามารถโทรจากภาพร่างของคุณเมื่อจำเป็น - ตามกิจกรรมและอื่นๆ ข้อความและข้อมูลที่จะส่งรวมกันเป็นสตริงในบรรทัดที่ 26.----------------------------------- -------------------------------------------------- -------------------------------------------------- ----------#include #include #include "TembooAccount.h" // มีข้อมูลบัญชี Temboo // ตามที่อธิบายไว้ในส่วนท้ายความคิดเห็นด้านล่าง const String TWITTER_ACCESS_TOKEN = "aaaa";const String TWITTER_ACCESS_TOKEN_SECRET = "bbbb";const String TWITTER_CONSUMER_KEY = "ccccc";const String TWITTER_CONSUMER_SECRET = "dddd";int analogZero; เป็นโมฆะการตั้งค่า () { Serial.begin (9600); ล่าช้า(4000); ในขณะที่(!ซีเรียล); Bridge.begin();} void tweet(){ Serial.println("รันฟังก์ชัน tweet()"); // กำหนดข้อความของทวีตที่เราต้องการส่ง String tweetText("ค่าของ A0 คือ " + String(analogZero) + ". Hooray for twitter"); สถานะ TembooChoreo อัปเดตChoreo; // เรียกใช้ไคลเอ็นต์ Temboo // โปรดทราบว่าไคลเอ็นต์ต้องถูกเรียกซ้ำ และเติมข้อมูลใหม่ด้วย // อาร์กิวเมนต์ที่เหมาะสม ทุกครั้งที่เรียกใช้เมธอด run() StatusesUpdateChoreo.begin(); // ตั้งค่าข้อมูลประจำตัวของบัญชี Temboo StatusesUpdateChoreo.setAccountName(TEMBOO_ACCOUNT); StatusesUpdateChoreo.setAppKeyName(TEMBOO_APP_KEY_NAME); StatusesUpdateChoreo.setAppKey(TEMBOO_APP_KEY); // ระบุ Temboo Library choreo ที่จะรัน (Twitter > Tweets > StatusesUpdate) StatusesUpdateChoreo.setChoreo("/Library/Twitter/Tweets/StatusesUpdate"); // เพิ่มข้อมูลบัญชี Twitter StatusesUpdateChoreo.addInput("AccessToken", TWITTER_ACCESS_TOKEN); StatusesUpdateChoreo.addInput("AccessTokenSecret", TWITTER_ACCESS_TOKEN_SECRET); StatusesUpdateChoreo.addInput("ConsumerKey", TWITTER_CONSUMER_KEY); StatusesUpdateChoreo.addInput("ConsumerSecret", TWITTER_CONSUMER_SECRET); // และทวีตที่เราต้องการส่ง StatusesUpdateChoreo.addInput("StatusUpdate", tweetText); // บอกให้ Process รันและรอผล // รหัสส่งคืน (returnCode) จะบอกเราว่าไคลเอ็นต์ Temboo // สามารถส่งคำขอของเราไปยังเซิร์ฟเวอร์ Temboo ที่ไม่ได้ลงชื่อ int returnCode = StatusesUpdateChoreo.run(); // รหัสส่งคืนเป็นศูนย์ (0) หมายถึงทุกอย่างทำงานได้หาก (returnCode == 0) { Serial.println ("สำเร็จ! ส่งทวีตแล้ว!"); } อื่น { // รหัสส่งคืนที่ไม่ใช่ศูนย์หมายความว่ามีข้อผิดพลาด // อ่านและพิมพ์ข้อความแสดงข้อผิดพลาดในขณะที่ (StatusesUpdateChoreo.available ()) { ถ่าน c = StatusesUpdateChoreo.read (); Serial.print(c); } } StatusesUpdateChoreo.close(); // ไม่ทำอะไรเลยใน 90 วินาทีถัดไป Serial.println("กำลังรอ…"); ล่าช้า (90000);} วงเป็นโมฆะ () { // รับข้อมูลบางส่วนจาก A0 analogZero=analogRead(0); ทวีต(); ทำ {} ในขณะที่ (1); // ไม่ทำอะไร}--------------------------------------------- -------------------------------------------------- ---------------------------------------- ซึ่งได้ผลลัพธ์ดังตัวอย่างทวีตต่อไปนี้ใน ภาพด้านบน ด้วยภาพร่างตัวอย่างก่อนหน้านี้ คุณสามารถสร้างฟังก์ชันการทำงานของคุณเองโดยใช้ฟังก์ชัน tweet() เพื่อส่งข้อมูลเมื่อจำเป็น โปรดจำไว้ว่าข้อมูลที่ส่งเป็นทวีตนั้นรวมกันเป็นสตริงที่บรรทัดที่ 26 โปรดทราบว่าคุณไม่สามารถทำลายทวีตเหมือนเครื่องจักรได้ ด้วยเหตุผลสองประการ – หนึ่ง ทวิตเตอร์ไม่ชอบทวีตอัตโนมัติอย่างรวดเร็ว – และสอง คุณจะได้รับการโทรฟรี 1,000 ครั้งในบัญชี Temboo ของคุณต่อเดือน หากคุณต้องการมากกว่านี้ คุณต้องอัปเกรดบัญชีโดยมีค่าใช้จ่าย สรุป ดีที่ Yún ทำให้เรามีวิธีอื่นในการส่งข้อมูลออกทางทวิตเตอร์ ไม่ใช่วิธีที่ถูกที่สุดในการทำเช่นนั้น แต่ก็ค่อนข้างง่าย และด้วยเหตุนี้การประนีประนอมกับแพลตฟอร์ม Arduino – ความเรียบง่ายเทียบกับราคา คอยติดตามการสอนเพิ่มเติม และหากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับ Arduino หรือต้องการแนะนำคนอื่นให้รู้จักโลกที่น่าสนใจของ Arduino ลองดูหนังสือของฉัน (ตอนนี้อยู่ในการพิมพ์ครั้งที่สาม!) “Arduino Workshop” จาก No Starch Press

แนะนำ: