Daftar Isi:

Membuat Robot Penggerak Rumput Bodoh Lebih Cerdas: 4 Langkah
Membuat Robot Penggerak Rumput Bodoh Lebih Cerdas: 4 Langkah

Video: Membuat Robot Penggerak Rumput Bodoh Lebih Cerdas: 4 Langkah

Video: Membuat Robot Penggerak Rumput Bodoh Lebih Cerdas: 4 Langkah
Video: MANUSIA ROBOT RAKSASA #viral 2024, November
Anonim
Membuat Robot Penggerak Rumput Bodoh Lebih Cerdas
Membuat Robot Penggerak Rumput Bodoh Lebih Cerdas

Jadi saya punya robot pemotong rumput yang cantik tapi bodoh (Gambarnya dari www.harald-nyborg.dk).

Robot ini seharusnya memotong halaman saya, tetapi halaman saya terlalu besar dan rumit untuk benar-benar masuk ke sudut.

Tidak ditampilkan pada gambar saya adalah banyak pohon dan satu set ayunan dan seterusnya dan seterusnya. Hasilnya adalah, robot menghabiskan banyak waktu, melindas bagian yang sudah dipangkas, dan terlalu sedikit waktu untuk memotong bagian yang sulit.

Jadi saya memutuskan untuk menambahkan beberapa kecerdasan eksternal.

23-04-2020 EDIT: sensornya tidak berfungsi dengan baik, jadi saya mengubah beberapa hal

Perlengkapan

2 Saklar 2 arah luar ruangan

ATAU

1 router usb lama

1 kartu relai usb

1 digispark

1 hub usb

1 kotak elektronik kedap air

23-04-2020 EDIT:

OR1 router usb lama

1 kartu relai usb

1 usb2serial tll hal

1 hub usb

1 kotak elektronik kedap air

1 Sensor ultrasonik Dfrobot URM 37 v3.2 (Anda mungkin bisa menggunakan sensor apa saja =)

kmod-usb-serial-cp210x

Langkah 1: Langkah 1: Pemotongan Multi Area Manuel

Langkah 1: Pemotongan Multi Area Manuel
Langkah 1: Pemotongan Multi Area Manuel
Langkah 1: Pemotongan Multi Area Manuel
Langkah 1: Pemotongan Multi Area Manuel

Gambar menunjukkan bagaimana saya pergi dari satu area pemotongan, ke 2 area.

Robot saya akan mulai otomatis setiap 2 hari, jadi selama saya ingat untuk mengubahnya dari satu area ke area lain, ini berfungsi dengan baik.

Saya menggunakan 2 sakelar manual, seperti yang Anda gunakan di aula atau tangga.

Ini berhasil, kecuali yang saya gunakan kualitasnya terlalu buruk, dan karena itu saya mendapatkan bug yang merangkak ke dalamnya, mengacaukannya

Langkah 2: Langkah 2: Solusi Otomatis

Langkah 2: Solusi Otomatis
Langkah 2: Solusi Otomatis
Langkah 2: Solusi Otomatis
Langkah 2: Solusi Otomatis
Langkah 2: Solusi Otomatis
Langkah 2: Solusi Otomatis
Langkah 2: Solusi Otomatis
Langkah 2: Solusi Otomatis

Jadi saya memutuskan untuk melakukan sesuatu yang otomatis.

Saya mendapat router Netgear R6100 bekas, saya mendapatkan yang ini karena memiliki wifi, usb, dan memori yang cukup untuk membuat eksperimen tentang bereksperimen, alih-alih membuatnya tentang menjejalkan OpenWrt dan teman-teman ke dalamnya.

Saya mendapat hub usb 2.0 terbaik ebays dan kartu relai 12v.

Kemudian saya memiliki digispark dari proyek sebelumnya. 23-04-2020 EDIT: menggunakan usb2seriel thinghy sebagai gantinya

saya kabel relay bukan switch. saya menggunakan relay 3 dan 4

Kemudian saya menginstal OpenWrt dan menambahkan Crelay, picocom dan coreutils-stty ke dalamnya.

23-04-2020 EDIT: menambahkan xxk, kmod-usb-serial-cp210x juga

Dicolokkan 12V ke router dan papan relai.

23-04-2020 EDIT: menggunakan Urm 37 v3.2 alih-alih sisa halaman ini

Kemudian saya belajar sesuatu yang "menyenangkan". relay boad akan mencoba menyalakan hub usb, sehingga menghalangi digispark untuk me-reboot dengan benar. Jadi saya memotong kabel listrik di kabel usb dari kartu relay dan hub usb.

Kemudian saya mencolokkan digispark dan kartu usb relay ke hub usb 2.0, dan hub ke router.

Agar adil, saya memprogram digispark sebelum menambahkannya ke router

Di digispark, saya menambahkan sebuah tombol, yang saya sambungkan antara P1 dan Gnd.

Tombol ini saya tempatkan, sehingga robot akan mengaktifkannya, begitu berada di garasinya.

saya harus menambahkan pegas ke aktivasi, untuk mendapatkan keterlibatan yang solid.

Langkah 3: Langkah 3: Perangkat Lunak

File berisi program ide arduino untuk digispark.

Itu ditempatkan di root/LawnSelector.

File ini membutuhkan beberapa lib digispark, seperti digiCDC dan papan digispark yang ditambahkan ke arduino ide.

Lalu ada file /root/GrassCtr/*.

Ini adalah file yang benar-benar berfungsi.

Kreds1 mengubah relai ke area1

Kreds2 mengubah relai ke area2

KredsStatus menanyakan relai USB, area mana yang aktif

23-04-2020 EDIT: Gunakan UltraSoundSeriel alih-alih baca digispark.

ReadDigiSpark, membaca berita setiap hari selasa.. Tunggu. Membaca status input digispark

GrassCtl yang berpikir.

Inilah yang dilakukannya.

Jika robot masuk selama lebih dari 10 jam, ia memutuskan robot masuk untuk malam, dan ini mengaktifkan flipflop, yang membuatnya mulai di setiap area setiap detik. Alasannya adalah, robot saya mulai dengan memotong seluruh tepinya, dan dengan cara ini, ia memotong tepinya setiap hari.

Kemudian setelah robot memotong, sensor akan memberi tahu bahwa robot keluar.

Setiap kali robot kembali untuk mengisi daya baterai (didefinisikan sebagai berada di selama lebih dari 20 menit), area tersebut akan diubah ke area lain.

tolong dicatat. Perangkat lunak ini benar-benar berantakan, tetapi berfungsi, begitu seterusnya dan ke atas

Langkah 4: Langkah 4: Mengaktifkan Perangkat Lunak

Untuk menjalankan perangkat lunak, kita perlu melakukan sesuatu.

Saya menambahkannya ke cronJob

*/5 * * * * /root/GrassCtrl/GrassCtl

ke file

/etc/crontabs/root

Kemudian, untuk mengaktifkan cronjobs saya lakukan

/etc/init.d/cron aktifkan

Sejauh yang saya tahu, robot sekarang akan berubah antara mulai memotong area 1 atau 2, dan akan mengubah apa yang dipangkas setiap kali mengisi ulang baterai.

Dan ya, sekarang mendapatkan segalanya

Direkomendasikan: