2011-12-08 40 views
5

Tôi muốn đọc thông tin cảm biến từ Arduino Uno. Tôi đã có một chương trình Java kết nối với cổng nối tiếp và đọc thông tin từ Arduino.Cách tốt nhất để xuất bản dữ liệu cảm biến Arduino lên một trang web?

Tôi muốn xuất bản thông tin này lên trang web (hiện tại máy tính của tôi đang chạy máy chủ web Apache). Tôi không giỏi phát triển web, tuy nhiên tôi có thể nhận được.

Kế hoạch của tôi là lưu dữ liệu cảm biến mà tôi đã đọc từ Arduino vào một tệp. Tôi sẽ cập nhật tệp này khoảng 1 phút một lần. Sau đó, sử dụng một số ngôn ngữ kịch bản phía máy chủ (ví dụ: PHP) đọc dữ liệu từ tệp và tạo trang web hiển thị thông tin cảm biến khi trang được yêu cầu.

Tuy nhiên, cách tiếp cận này dường như không "thanh lịch". Có cách nào tốt hơn để thực hiện tác vụ này không?

(Ngoài ra, tôi chỉ sử dụng Arduino Uno với một cổng USB, tôi không có một Ethernet shield.)

+0

cũng là một nơi tốt để hỏi: http://electronics.stackexchange.com/ – vikingosegundo

Trả lời

2

Tôi đoán nó thực sự phụ thuộc vào cách mạnh mẽ mà bạn muốn trang web được và làm thế nào tập trung bạn muốn ứng dụng của bạn được.

Nếu bạn chỉ tìm kiếm dữ liệu thô đơn giản, bạn có thể tạo a simple web server vào ứng dụng Java của mình để phục vụ nội dung của tệp. Điều này sẽ tập trung mọi thứ vào một ứng dụng. (Thay vì apache + php + java)

Nếu bạn đang tìm kiếm dữ liệu trực tiếp, bạn thậm chí có thể kích hoạt các lệnh nối tiếp khi yêu cầu http://localhost/getData và trả lời dữ liệu trực tiếp đọc qua sê-ri. (Mặc dù, tôi sẽ không khuyên bạn nên điều này nếu một số kết nối đồng thời sẽ được thực hiện cho máy chủ web của bạn. Arduino không làm đa luồng và nối tiếp có thể được làm chậm.)

Những nhược điểm của điều này, tất nhiên, là bạn được mã hóa thủ công đầu ra HTML. Có một số thư viện HTML (herehere) có thể trợ giúp với điều này.

+0

Cảm ơn! Hai liên kết cuối cùng bạn đăng rất hữu ích. Tôi nghĩ tôi sẽ cố gắng tập trung mọi thứ vào một ứng dụng vì điều đó có vẻ đơn giản nhất. – jos76

0

Để thêm, nếu bạn không mong đợi nhận được nhiều lần truy cập trong một thời gian ngắn, hãy tạo trang động, được kích hoạt khi có yêu cầu (như bạn mô tả) hoạt động tốt. Nếu bạn mong đợi nhận được nhiều lần truy cập mỗi phút (tỷ lệ cập nhật được chỉ định cho dữ liệu), bạn sẽ muốn tạo trang một lần mỗi phút khi dữ liệu cập nhật, sau đó phân phát cho mỗi người yêu cầu, thay vì tạo lại trang mỗi lần có một yêu cầu.

1

Bạn có thể tạo tài khoản trên SensorMonkey.com và sau đó tạo API để sử dụng dữ liệu cảm biến trên một trang web khác.

2

Vì bạn không có lá chắn Ethernet nên tùy chọn duy nhất cho bạn là sử dụng cổng đọc nối tiếp.

đọc dữ liệu từ cổng nối tiếp và lưu dữ liệu vào tệp, bạn có thể thử định dạng dữ liệu của mình ở định dạng json hoặc xml. điều này sẽ cho phép bạn dễ dàng thao tác dữ liệu bằng cách sử dụng jQuery cho exmple.

nếu bạn biết cách tạo một trang ajax để hiển thị dữ liệu theo cách lịch sự. bạn có thể xem backbone.js và một số jQuery.

nếu bạn không giỏi về phát triển web và/hoặc thiết kế web. bạn có thể phụ thuộc vào các trang web được tạo trước cho mục đích này. tôi thích giao diện người dùng của cosm website

và bạn có thể xem xét có lá chắn Ethernet hoặc WiFi.có Arduino của bạn kết nối trực tiếp với internet có thể rất mạnh mẽ và sẽ cho phép bạn tạo hacks gọn gàng

bạn cũng có thể thích này tutorial

2

Bạn đã bao giờ nghe nói về SensorMonkey ... Trang web này giúp bạn xuất bản của bạn dữ liệu cảm biến từ arduino hoặc các thiết bị khác như Shimmer hoặc xBee .. Bạn có thể đăng nhập bằng cách sử dụng tài khoản facebook của mình. Nó rất dễ sử dụng vì thế nó không yêu cầu kiến ​​thức phát triển web ...

+1

Sensormonkey đã bị gián đoạn – HixField

Các vấn đề liên quan