Mục lục:

Twitter và Arduino Yún: 3 bước
Twitter và Arduino Yún: 3 bước

Video: Twitter và Arduino Yún: 3 bước

Video: Twitter và Arduino Yún: 3 bước
Video: How to take a photo and post it on Twitter with Arduino - Camera Shield Tutorial 2024, Tháng bảy
Anonim
Twitter và Arduino Yún
Twitter và Arduino Yún

Sau khi chi gần 100 đô la cho một Arduino Yún để xem những gì rắc rối xảy ra, có vẻ như là một ý tưởng hay để tìm và chứng minh một số công dụng của nó. Vì vậy, trong bài viết này, chúng tôi sẽ xem xét cách Yún của bạn có thể gửi một tweet bằng cách sử dụng một số bản phác thảo ví dụ đơn giản - và phần đầu tiên trong số một số hướng dẫn dành riêng cho Arduino Yún. Bắt đầu Nếu bạn chưa làm như vậy, hãy đảm bảo rằng Arduino Yún của bạn có thể kết nối với mạng của bạn qua WiFi hoặc cáp - và có tài khoản Temboo (chúng tôi chạy qua phần này tại đây). Và bạn cần (tại thời điểm viết bài) IDE phiên bản 1.5.4 có thể được tải xuống từ trang web Arduino. Cuối cùng, nếu bạn không có tài khoản twitter - hãy lấy một tài khoản.

Bước 1: Gửi Tweet từ Yún của bạn

Gửi một Tweet từ Yún của bạn
Gửi một Tweet từ Yún của bạn
Gửi một Tweet từ Yún của bạn
Gửi một Tweet từ Yún của bạn

Gửi một tweet từ Yún của bạn tới Arduino và Temboo, 99% công việc đã được thực hiện cho bạn. Để gửi một tweet, cần có bản phác thảo Arduino, tệp tiêu đề với thông tin chi tiết về tài khoản Temboo của bạn và cũng cần phải đăng ký ứng dụng trong bảng điều khiển phát triển twitter. Đừng lo lắng, chỉ cần làm theo hướng dẫn "Thiết lập" từ trang sau. Khi bạn thực hiện - hãy đảm bảo rằng bạn đã đăng nhập vào trang web Temboo, vì sau đó nó sẽ điền vào tệp tiêu đề với các chi tiết Temboo cho bạn. Trong giai đoạn ứng dụng twitter, đừng quên lưu cài đặt OAuth của bạn, cài đặt này sẽ xuất hiện trong tab “Công cụ OAuth” trong trang dành cho nhà phát triển twitter, ví dụ như trong hình trên. Các cài đặt này sau đó được sao chép vào mọi bản phác thảo bắt đầu từ dòng: constStringTWITTER_ACCESS_TOKEN = Khi bạn lưu bản phác thảo, hãy đảm bảo rằng bạn đặt tệp tiêu đề có tên TembooAccount.h trong cùng thư mục với bản phác thảo của bạn. Bạn biết rằng điều này đã thành công khi mở sketch, vì bạn sẽ thấy tệp tiêu đề trong tab thứ hai, ví dụ như trong hình ảnh thứ hai ở bước này. Cuối cùng, nếu bạn đang chia sẻ mã với người khác, hãy xóa OAuth và TembooAccount của bạn. h chi tiết nếu không họ có thể gửi tweet thay mặt bạn.

Bước 2: Nó có hoạt động không?

Nó có hoạt động không?
Nó có hoạt động không?

OK - đủ cảnh báo. Nếu bạn đã tạo thành công tài khoản Temboo, có thông tin chi tiết về OAuth trên twitter của bạn, đưa tất cả chúng vào tệp phác thảo và tệp tiêu đề, sau đó lưu (!) Và tải bản phác thảo của bạn lên Arduino Yún - một tweet ngắn sẽ xuất hiện trên dòng thời gian của bạn, cho ví dụ trong hình ảnh đầu tiên ở trên. Nếu không có gì xuất hiện trên nguồn cấp dữ liệu twitter của bạn, hãy mở trình theo dõi nối tiếp trong IDE và xem thông báo nào xuất hiện. Nó sẽ trả lại cho bạn thông báo lỗi từ twitter, thông báo này thường chỉ ra sự cố.

Bước 3: Gửi dữ liệu của riêng bạn dưới dạng Tweet

Gửi dữ liệu của riêng bạn dưới dạng Tweet
Gửi dữ liệu của riêng bạn dưới dạng Tweet

Tiếp tục, hãy kiểm tra cách gửi tweet với thông tin của riêng bạn. Trong bản phác thảo ví dụ sau, chúng tôi gửi giá trị kết quả từ analogRead (0) và văn bản được kết hợp với nhau trong một dòng. Đừng quên tin nhắn twitter (tweet) có độ dài tối đa là 140 ký tự. Chúng tôi đã chuyển tất cả việc gửi tweet vào một hàm tweet (), sau đó bạn có thể gọi hàm này từ bản phác thảo của mình khi được yêu cầu - theo một sự kiện, v.v. Văn bản và dữ liệu cần gửi được kết hợp thành một Chuỗi ở dòng 26.----------------------------------- -------------------------------------------------- -------------------------------------------------- ---------- # include #include #include "TembooAccount.h" // chứa thông tin tài khoản Temboo // như được mô tả trong nhận xét ở chân trang bên dướiconst Chuỗi TWITTER_ACCESS_TOKEN = "aaaa"; const Chuỗi TWITTER_ACCESS_TOKEN_SECRET = "bbbb"; const String TWITTER_CONSUMER_KEY = "ccccc"; const String TWITTER_CONSUMER_SECRET = "dddd"; int analogZero; void setup () {Serial.begin (9600); chậm trễ (4000); while (! nối tiếp); Bridge.begin ();} void tweet () {Serial.println ("Đang chạy hàm tweet ()"); // xác định văn bản của tweet mà chúng ta muốn gửi String tweetText ("Giá trị của A0 là" + String (analogZero) + ". Hoan hô cho twitter"); TembooChoreo StatusesUpdateChoreo; // gọi ứng dụng Temboo // LƯU Ý rằng ứng dụng khách phải được gọi lại và tái tạo với // các đối số thích hợp, mỗi khi phương thức run () của nó được gọi. StatusesUpdateChoreo.begin (); // đặt thông tin đăng nhập tài khoản Temboo StatusesUpdateChoreo.setAccountName (TEMBOO_ACCOUNT); StatusesUpdateChoreo.setAppKeyName (TEMBOO_APP_KEY_NAME); StatusesUpdateChoreo.setAppKey (TEMBOO_APP_KEY); // xác định vũ đạo Thư viện Temboo để chạy (Twitter> Tweets> StatusesUpdate) StatusesUpdateChoreo.setChoreo ("/ Library / Twitter / Tweets / StatusesUpdate"); // thêm thông tin tài khoản 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); // và tweet mà chúng ta muốn gửi StatusesUpdateChoreo.addInput ("StatusUpdate", tweetText); // báo cho Process chạy và đợi kết quả. // Mã trả về (returnCode) sẽ cho chúng ta biết liệu máy khách Temboo // có thể gửi yêu cầu của chúng tôi đến các máy chủ Temboo không được ký int returnCode = StatusesUpdateChoreo.run (); // mã trả về không (0) có nghĩa là mọi thứ đều hoạt động if (returnCode == 0) {Serial.println ("Thành công! Đã gửi Tweet!"); } else {// mã trả về khác 0 nghĩa là có lỗi // đọc và in thông báo lỗi while (StatusesUpdateChoreo.available ()) {char c = StatusesUpdateChoreo.read (); Serial.print (c); }} StatusesUpdateChoreo.close (); // không làm gì trong 90 giây tiếp theo Serial.println ("Đang chờ…"); delay (90000);} void loop () {// lấy một số dữ liệu từ A0. analogZero = analogRead (0); tiếng riu ríu(); làm {} while (1); // không làm gì cả}--------------------------------------------- -------------------------------------------------- ---------------------------------------- Kết quả nào với tweet ví dụ sau được hiển thị trong hình ảnh trên. Với bản phác thảo ví dụ trước, bạn có thể xây dựng chức năng của riêng mình xung quanh hàm tweet () để gửi dữ liệu khi được yêu cầu. Hãy nhớ lại rằng dữ liệu để gửi dưới dạng một tweet được kết hợp thành một Chuỗi ở dòng 26. Xin lưu ý rằng bạn không thể tạo ra các tweet như một cái máy, vì hai lý do - một, twitter không thích tweet tự động nhanh chóng - và hai, bạn chỉ nhận được 1000 cuộc gọi miễn phí trên tài khoản Temboo mỗi tháng. Nếu bạn cần thêm, tài khoản cần được nâng cấp với một khoản chi phí. Kết luận Vâng, Yún cung cấp cho chúng ta một cách khác để gửi dữ liệu ra ngoài qua twitter. Đó không phải là cách rẻ nhất để làm như vậy, tuy nhiên nó khá đơn giản. Và do đó, sự đánh đổi với nền tảng Arduino - sự đơn giản so với giá cả. Hãy theo dõi để biết thêm các hướng dẫn. Và nếu bạn muốn tìm hiểu thêm về Arduino hoặc muốn giới thiệu với người khác về thế giới thú vị của Arduino - hãy xem cuốn sách của tôi (hiện đang được in lần thứ ba!) “Hội thảo Arduino” từ No Starch Press.

Đề xuất: