Mục lục:

Cho cá ăn vảy cá của bạn từ mọi nơi!: 7 bước (có hình ảnh)
Cho cá ăn vảy cá của bạn từ mọi nơi!: 7 bước (có hình ảnh)

Video: Cho cá ăn vảy cá của bạn từ mọi nơi!: 7 bước (có hình ảnh)

Video: Cho cá ăn vảy cá của bạn từ mọi nơi!: 7 bước (có hình ảnh)
Video: Quá trình xăm mình có đáng sợ không? 2024, Tháng mười một
Anonim
Image
Image
Các bộ phận và công cụ
Các bộ phận và công cụ

Cho cá của bạn ăn từ mọi nơi trên thế giới. Tương thích với mảnh! Có rất nhiều máy cho cá ăn trên mạng nhưng không nhiều máy cho cá ăn. Chế độ ăn chính của cá vàng của tôi. Tôi thích cho cá ăn và khi đi du lịch, tôi cũng muốn có được niềm vui đó. Điều này cũng rất tốt nếu bạn quên cho cá ăn. Không còn quay đầu trên con đường làm việc! Ứng dụng này cũng có màn hình hiển thị thời gian cho ăn lần cuối. Điều này sẽ giúp bạn không cho cá ăn thừa hoặc thiếu và với giá thấp hơn 20 đô la, nó rẻ hơn nhiều giải pháp thương mại.

Dự án đầu tiên của tôi với Arduino là một máy cho cá tự động. Với sự thiếu hiểu biết của tôi về cả Arduino và in 3D, dự án đó không tuyệt vời. Mục tiêu của dự án này là xây dựng một phiên bản tốt hơn. Tôi thích xem sự phát triển của mình, xem phiên bản này tốt hơn bao nhiêu. Bộ trung chuyển này dựa trên NodeMCU và ứng dụng Blynk.

Cập nhật: Ở những vùng khí hậu ẩm ướt như nhiệt đới hoặc ven biển, thực phẩm có xu hướng ngấm ẩm và bị vón cục và khá thô. Đối với những người sống ở những vùng khí hậu này, tôi khuyên bạn nên sử dụng một thiết kế để giữ thực phẩm được đậy kín khi không sử dụng.

Bước 1: Các bộ phận và công cụ

Các bộ phận và công cụ
Các bộ phận và công cụ
Các bộ phận và công cụ
Các bộ phận và công cụ

Các bộ phận

NodeMCU

$8

Micro SG90 Servo

$1.70

Breadboard

$4

Dây nhảy

21¢

Cáp Micro USB

$2

Bộ phận in 3D

Điện thoại thông minh - Bạn sẽ cần tải xuống ứng dụng Blynk. Có sẵn trên iPhone và Android.

Keo nóng - Để gắn servo tại chỗ và gắn còi servo vào miếng lắc.

Hộp đựng cá - Tôi đã thiết kế khay đựng cá để vừa với chai này. Bạn cũng có thể in 3d một chai để phù hợp. Tôi đã mua của tôi trong cửa hàng tại PetSmart.

Công cụ

máy in 3D

Súng bắn keo nóng

Giấy nhám - Tôi đã sử dụng 100 grit. Điều này có thể cần thiết để lắp servo vào khe của nó.

Chương trình và Thư viện

Arduino IDE

Ứng dụng Blynk

Thư viện Blynk

Bước 2: In 3D

in 3d
in 3d
in 3d
in 3d
in 3d
in 3d

Tôi đã thiết kế máng ăn cho cá trên Tinkercad. Tôi đang học Fusion360 nhưng hiện tại tôi tự tin hơn với Tinkercad. Bộ nạp in thành hai mảnh với một chai tùy chọn đi cùng với nó. Phần lớn hơn chứa chai, servo và NodeMCU. Mảnh thứ hai gắn vào sừng servo. Thức ăn được lắc khỏi mảnh này vào nước. Cả hai phần có thể được in mà không cần hỗ trợ. Tôi đã sử dụng 25% infill. Nên dùng chai nhưng bạn có thể dùng chai đựng thức ăn cho cá từ trang phụ tùng thay thế. Phần lớn hơn tôi mất khoảng năm giờ để in và phần đính kèm servo mất khoảng một giờ rưỡi. Bạn có thể tìm thấy các tệp ở đây: Tệp máy in trên Thingiverse

Tôi hiện đang in trên MOD-t. Giá rẻ và phần mềm dễ sử dụng đã khiến nó trở thành chiếc máy in đầu tiên tuyệt vời đối với tôi. Tuy nhiên, tôi thích một chiếc máy in mới vì tôi đang phát triển như một nhà thiết kế và nhà phát minh CAD.

Bước 3: Sơ đồ

Sơ đồ
Sơ đồ
Sơ đồ
Sơ đồ

NodeMCU là một vi điều khiển tương tự như Arduino. Sự khác biệt là nó có một chip esp tích hợp. Điều này có nghĩa là không có bất kỳ thành phần bên ngoài nào nó có thể kết nối với wifi.

Các kết nối duy nhất được thực hiện là giữa servo và NodeMCU. Kết nối Gnd với Gnd. 5v của servo được gắn vào Vin của NodeMCU. Sau đó, dây tín hiệu của servo sẽ gắn vào D1 của NodeMCU. NodeMCU có sơ đồ chân khác với Arduino thông thường của bạn. D1 của NodeMCU tương ứng với chân D5 của Arduino. Kiểm tra sơ đồ chân. Trong đoạn mã mà chúng tôi xác định mã pin của mình, chúng tôi có hai lựa chọn. Gọi mã pin là "D1" hoặc gọi nó là "5". Cả hai tùy chọn đều hoạt động.

Bước 4: Tạo ứng dụng - Blynk

Tạo ứng dụng - Blynk
Tạo ứng dụng - Blynk
Tạo ứng dụng - Blynk
Tạo ứng dụng - Blynk
Tạo ứng dụng - Blynk
Tạo ứng dụng - Blynk
Tạo ứng dụng - Blynk
Tạo ứng dụng - Blynk

Blynk là một ứng dụng IOS và Android cho phép kết nối với vi điều khiển thông qua wifi, bluetooth, ethernet,… Trong dự án này chúng tôi kết nối với ứng dụng qua wifi. Blynk là một ứng dụng kéo và thả cho phép dễ dàng, tùy chỉnh màn hình để điều khiển các dự án.

Để thiết lập ứng dụng Blynk:

Tải xuống ứng dụng Blynk.

Thiết lập một tài khoản. Sử dụng một địa chỉ email thực. Mã xác thực của bạn sẽ được gửi đến email này.

Nhấp vào "Tạo dự án mới".

Đặt tên cho dự án của bạn.

Chọn thiết bị "NodeMCU".

Đảm bảo loại kết nối là "Wifi".

Nhấp vào "Tạo dự án".

Nhấp vào màn hình và một thanh bên sẽ xuất hiện.

Chọn một nút.

Đặt tên cho nút.

Chọn đầu ra là "Virtual 1".

Đảm bảo rằng nó đang ở chế độ "Đẩy".

Đặt tên Trên "Cho ăn" và Tắt "Nguồn cấp dữ liệu".

Nhấp vào "OK" Nhấp vào màn hình một lần nữa.

Chọn một "Hiển thị giá trị được gắn nhãn M".

Đặt tên là "Lần cho ăn cuối cùng".

Chọn đầu vào là V5.

Nhấp vào "OK".

Nhấp vào màn hình một lần nữa.

Cuộn xuống trên thanh bên đến "Đồng hồ thời gian thực".

Chọn nó.

Đặt múi giờ của riêng bạn và nhấp vào "OK".

Ứng dụng của bạn đã sẵn sàng hoạt động

Bước 5: Mã

Để sử dụng mã, bạn sẽ cần tải xuống thư viện Blynk.

Bạn cũng sẽ cần thực hiện một vài bước để có thể lập trình NodeMCU với Arduino IDE. Làm theo các bước từ đây: Chương trình NodeMCU

Mã hoạt động bằng cách cảm nhận tín hiệu cao từ chân ảo 5. Điều này được kích hoạt bởi một nút trong ứng dụng Blynk. Khi tín hiệu cao được phát hiện, mã sẽ chạy một chức năng. Chức năng này gọi servo di chuyển 30 độ theo các bước 1 độ. Sử dụng các bước cung cấp chuyển động sạch sẽ.

Đồng thời, điện thoại cũng gửi dữ liệu đồng hồ thời gian thực, còn gọi là thời gian đến NodeMcu. Điện thoại sẽ gửi thời gian mỗi giây. Khi nhấn nút để di chuyển servo, một biến i được đưa về 1. Điều này khiến câu lệnh if (i == 1) là true, gửi thời gian hiển thị trong ứng dụng. Thời gian được gửi mỗi khi nhấn nút. Có nghĩa là thời gian được hiển thị là thời gian của lần cho ăn cuối cùng.

Bạn sẽ cần bao gồm ssid và mật khẩu của mình. Nếu kết nối wifi của bạn không yêu cầu mật khẩu, hãy để trường đó là "". Bạn cũng sẽ cần bao gồm mã xác thực của mình, được gửi đến khi ứng dụng của bạn được tạo. Bạn có thể cần thay đổi mức độ của servo để phù hợp với lượng thức ăn bạn muốn nạp vào.

/ * Máy cho cá ăn không dây * Giá Aaron * V1.2 * * Bản phác thảo này cho phép cho cá ăn từ mọi nơi trên thế giới * nếu có sẵn wifi. Bản phác thảo dựa trên NodeMCU * điều khiển một servo trên chân D1 (GPIO5). Ứng dụng Blynk * điều khiển NodeMCU từ điện thoại thông minh. * Ứng dụng gửi dữ liệu rtc từ điện thoại thông minh đến NodeMCU. * Kết nối một nút trên ứng dụng với mã pin ảo 1. * Kết nối nhãn với mã pin ảo 5. * /

#define BLYNK_PRINT Sê-ri

#bao gồm

#bao gồm

#bao gồm

#bao gồm

#bao gồm

// Bạn sẽ nhận được Mã xác thực trong Ứng dụng Blynk. // Đi tới Cài đặt dự án (biểu tượng hạt). char auth = "AuthToken";

// Thông tin đăng nhập WiFi của bạn. // Đặt mật khẩu thành "" cho các mạng mở. char ssid = "ssid"; char pass = "mật khẩu"; int pos; int i; Servo myservo;

Bộ đếm thời gian BlynkTimer;

WidgetRTC rtc;

void clockDisplay () {// Bạn có thể gọi giờ (), phút (),… bất kỳ lúc nào // Vui lòng xem các ví dụ về Thư viện thời gian để biết chi tiết

String currentTime = String (giờ ()) + ":" + phút () + ":" + giây (); String currentDate = String (day ()) + "" + tháng () + "" + năm (); // Serial.print ("Giờ hiện tại:"); // Serial.print (currentTime); // Serial.print (""); // Serial.print (currentDate); // Serial.println ();

if (i == 1) {// Gửi thời gian đến App Blynk.virtualWrite (V5, currentTime); i = 0; Serial.print (i); }

}

void setup () {// Bảng điều khiển gỡ lỗi Serial.begin (9600);

myservo.attach (5); myservo.write (75); Blynk.begin (auth, ssid, pass); rtc.begin ();

timer.setInterval (1000L, clockDisplay); Serial.print (i); }

void loop () {Blynk.run (); timer.run (); }

BLYNK_WRITE (V1) {if (param.asInt () == 1) {

i ++; Serial.print (i); Serial.print ("Đã ép"); // Di chuyển Servo đến vị trí nguồn cấp dữ liệu

for (pos = 50; pos = 140; pos- = 1) // đi từ 180 độ xuống 0 độ // {// myservo.write (pos); // yêu cầu servo chuyển đến vị trí trong biến 'pos' // delay (15); // đợi 15ms để servo đến vị trí //}} else {Serial.print ("Depression"); // Quay lại trang chủ myservo.write (75);}}

Bước 6: Kết hợp tất cả lại với nhau

Để tất cả chúng cùng nhau
Để tất cả chúng cùng nhau
Để tất cả chúng cùng nhau
Để tất cả chúng cùng nhau
Để tất cả chúng cùng nhau
Để tất cả chúng cùng nhau

Gắn servo vào miếng in 3d như hình trên. Miếng shaker nên được xếp trên sừng sao cho nó phủ kín khe để thức ăn, sau đó dán vào sừng. Chai sẽ trượt vào lỗ của nó với một lực nhỏ. Dán breadboard vào phần phẳng và dán phần dưới của phần phẳng vào bể. Tôi thiết kế mảnh để ngồi ở mảnh góc bên phải. Cấp nguồn cho NodeMCU và nhấp vào nút phát ở góc trên cùng bên phải của ứng dụng. Bộ nạp của bạn hiện đã sẵn sàng!

Bước 7: Kết luận

Image
Image
Cuộc thi Internet of Things 2017
Cuộc thi Internet of Things 2017

Nếu tất cả đều hoạt động, khi bạn nhấp vào nút nguồn cấp dữ liệu, cá sẽ được cho ăn. Thời gian cho ăn cuối cùng cũng nên cập nhật. Đây là một trong những dự án hữu ích nhất mà tôi đã thực hiện. Tôi thích thú khi cho cá ăn và cá kiếm được thức ăn. Nghe có vẻ như một chiến thắng giành chiến thắng! Với tất cả những gì cho ăn, tôi sẽ có một số cá lớn. Có ai biết cách xây ao không?

Có thể hướng dẫn này trong một vài cuộc thi. Hãy yêu thích, bình luận, bình chọn và chia sẻ. Tôi cũng rất vui khi trả lời các câu hỏi. Thưởng thức

Cuộc thi Internet of Things 2017
Cuộc thi Internet of Things 2017

Á quân Cuộc thi Internet of Things 2017

Đề xuất: