Bagaimana cara membuat "robot mengikuti garis tak terlihat"?

10

Saya ingin membuat robot yang mengikuti jalur virtual (Bukan jalur yang terlihat seperti 'garis hitam di permukaan putih', dll).

Saya hanya antusias dengan melihat beberapa video sci-fi yang menunjukkan robot membawa barang dan bahan di tempat yang ramai. Dan mereka benar-benar tidak mengikuti garis fisik. Mereka merasakan hambatan, kedalaman, dll.

Saya ingin membuat satu robot yang mengikuti jalur (virtual) spesifik dari titik A ke B.

Saya sudah mencoba beberapa hal:

  1. Menggunakan sensor "Hall effect" magnetik pada robot dan kabel yang membawa arus (di bawah meja). Masalahnya di sini adalah bahwa sekitar sensor efek hall sangat kecil (<2cms) sehingga sangat sulit untuk menilai apakah robot berada di garis atau di luar garis. Bahkan menggunakan serangkaian magnet tidak dapat menyelesaikan masalah ini, karena meja saya setebal 1 inci. Jadi ide ini gagal: P

  2. Menggunakan cat ultraviolet (pada garis) dan menggunakan led UV pada robot sebagai sensor. Ini akan memberi lebih banyak gerakan Zig-Zag untuk robot. Dan karena ancaman potensial menggunakan sumber cahaya UV, bahkan ide ini gagal: P

Saya akhirnya berpikir memiliki kamera di atas dan menggunakan algoritma pemrosesan gambar untuk melihat apakah robot ada di garis atau divergen.

Apakah ada solusi yang lebih baik dari ini? Sangat mencari solusi kreatif dan sederhana. :)

Nitin
sumber
Apakah Anda terbiasa dengan sensor sonar dan SLAM dan subjek terkait? Seringkali robot tidak mengikuti jalur yang telah ditentukan dan mereka "merasakan" hambatan oleh sensor seperti sonar, membangun peta dan kemudian menggunakan algoritma perencanaan jalur untuk menemukan jalan mereka.
Shahbaz
Terima kasih atas jawabannya :) Ya, saya kenal dengan sensor ultrasonik dan sonar ... sebenarnya saya ingin robot robot saya bergerak dari titik A ke titik B di jalur tertentu, dan itu juga di atas meja (3 kaki di atas tingkat dasar) ... Dan membangun peta di lingkungan ini benar-benar rumit ... Jadi ada saran ??
Nitin
4
Saya sedang menjawab pertanyaan ini, tetapi saya perhatikan bahwa Anda menanyakan 2 hal yang bertentangan. Dengan "garis tak terlihat", maksud Anda "garis yang tidak terlihat oleh mata telanjang misalnya garis yang ditentukan oleh sinyal magnetik atau UV ", atau maksud Anda "garis yang ada secara virtual - di dalam robot - berdasarkan ke mana ia ingin pergi dan hambatan yang dirasakannya dalam perjalanan ke sana "? Untuk mengatakannya dengan cara lain, apakah Anda menggambar garis untuk diikuti robot, atau apakah robot menggambarnya?
Ian
Hai lan, saya ingin robot otonom yang harus menavigasi sendiri dari satu titik ke titik lain. Untuk melakukan itu diperlukan garis atau jalur referensi. Robot pengikut garis adalah solusi paling sederhana tetapi saya sedang mencari solusi canggih dan kuat. Dan itu bisa berupa garis yang tidak terlihat oleh mata telanjang atau garis virtual yang dibuat oleh robot. Robot tidak menarik garis, hanya mengikuti. untuk mengatakannya dengan cara lain, garis (virtual) didefinisikan oleh saya. Paling tidak "Pemrosesan gambar" bisa menjadi solusi jika hal lain tidak berhasil. Tetapi saya mencari beberapa solusi sederhana :)
Nitin
@ nitin, mungkin Anda harus menghindari menggunakan istilah seperti "navigasi sendiri", karena itu secara otomatis berarti jalur itu tidak ditentukan dan diserahkan kepada robot untuk menemukannya. Yang Anda inginkan tampaknya adalah robot yang mengikuti garis dan tidak memiliki kemampuan untuk menemukan caranya sendiri jika tidak diberi petunjuk.
Shahbaz

Jawaban:

3

Ada banyak cara yang mungkin untuk mendekati masalah ini, dan semuanya tergantung pada bahan yang tersedia dan keahlian pembuat robot.

Singkatnya, kriterianya adalah:

  1. Robot harus pergi dari titik A ke B mengikuti jalur yang telah ditentukan.
  2. Jalan yang diambil tidak harus mengikuti garis yang terlihat oleh mata manusia.

Bergantung pada panjang lintasan, menggunakan encoders bisa mencukupi. Namun, perlu dicatat bahwa karena ketidaktepatan fisik, drift membuat odometry (apa yang kita sebut menggunakan encoders untuk mengukur jarak) tidak praktis untuk jarak jauh. Namun, ini mudah untuk jarak pendek, dan setidaknya harus dipertimbangkan.

Jika jarak terlalu jauh hanya untuk odometri, seseorang harus mempertimbangkan menggunakan beberapa sensor untuk mengukur belokan (misalnya, giroskop atau kompas ). Giliran cenderung menghasilkan kesalahan yang paling banyak dalam odometri (pengukuran sepanjang garis lurus tidak memiliki terlalu banyak kesalahan), jadi menggunakan sensor untuk belokan terkadang dapat menjadikan odometri solusi yang layak.

Jika odometry atau odometry + sensed turning tidak berfungsi, maka kita harus kreatif. Jika Anda ingin robot mengikuti jalur yang sebagian besar terdiri dari segmen lurus, Anda dapat menempatkan IR LED pada "titik arah" yang diberikan di atas meja, dan minta robot merasakan LED tersebut dan arahkan ke setiap titik arah secara seri.

Namun, itu masih menyisakan beberapa tanda visual di atas meja (meskipun itu bisa disamarkan sampai batas tertentu), dan akan lebih baik jika bisa melakukannya tanpa itu. Pendekatan lain adalah dengan menggunakan laser pointer yang paralel dengan permukaan meja, tetapi beberapa inci di atas meja. Robot dapat menggunakan photoresistor untuk mendeteksi ketika melintasi laser, dan ini bisa membuatnya tahu kapan harus berpaling.

Secara keseluruhan, saya berpikir bahwa odometri yang ditambah dengan sensor sudut mungkin merupakan taruhan terbaik untuk robot Anda, setidaknya dengan cara Anda menggambarkannya. Saya mungkin bisa memikirkan lebih banyak pilihan, tetapi hanya itu yang saya lihat sekarang.

Hanya ingin tahu - mengapa Anda ingin garis itu tidak terlihat? Mengetahui mengapa bisa membuka beberapa kemungkinan lagi.

apnorton
sumber
Terima kasih banyak @anorton :) :) "Odometry" + "sensor seperti giroskop atau kompas": - Bulls-eye;) Saya yakin, ini pasti akan berhasil. Dan dibandingkan dengan teknik pemrosesan gambar, ini tampaknya cukup mudah. Yup, saya sudah mendapat solusinya, Terima kasih :) Akan memperbarui Anda dengan progess proyek dan tantangan lain yang dihadapi.
Nitin
By the way, seluruh titik membuat garis tak terlihat adalah - "Sebuah garis hitam di permukaan dan robot mengikuti garis" sekarang hanya robot dasar yang mengajarkan hal-hal tingkat. Dan saya menemukan bahwa di tingkat industri, itu tidak dihargai. Orang-orang membutuhkan robot yang sangat canggih dan cerdas untuk melakukan pekerjaan mereka. Jadi saya sedang mengerjakan proyek ini untuk membangun robot dengan stabilitas dan ketahanan yang lebih tinggi. Robot yang tidak mudah diretas. Untuk mengatakannya dengan cara lain, orang biasa tidak boleh tahu teknologi di balik robot :)
Nitin
2

Anki menggunakan sensor optik di mobil mainan mereka untuk menerapkan pengikut garis. Sensor optik sensitif dalam rentang IR. Fakta bahwa garis-garis tidak dapat dilihat dengan mudah dijelaskan: Garis-garis dilapisi dengan warna hitam yang transparan dalam kisaran IR. Paliogen black L 86 atau Paliogen black S 84 by BASF adalah warna-warna tersebut. Jika Anda menempatkan barcode di sepanjang garis, Anda bahkan bisa mendapatkan informasi posisi absolut dari sensor optik.

pengguna1225999
sumber
0

Saya punya jawaban singkat untuk pertanyaan Anda. Ini hanya untuk robot yang diaktifkan ROS. Ada banyak cara untuk melakukan ini, tetapi ini adalah bagaimana saya melakukannya. Saya menggunakan ROS dan Kuka Youbot. Ini bisa berupa robot apa pun yang menggunakan ROS. Sangat membantu untuk mengetahui ROS jika Anda berencana menjadi robotika.

Gunakan ROS Lalu gunakan GMapping untuk memetakan lingkungan Anda. Contoh ruang atau lorong dan simpan peta. Kemudian menggunakan RVIZ, berikan posisi sasaran di peta.

Yathartha Tuladhar
sumber
0

Yah Anda tidak perlu garis apa pun dalam hal ini. Satu hal yang mungkin Anda butuhkan adalah koordinat global. jika Anda dapat menempatkan robot di bidang yang ditentukan oleh koordinat global dan menerapkan aturan sederhana fisika Newton, robot dapat berpindah dari satu titik ke titik lainnya. Berdasarkan lokasi sekarang, itu akan mengetahui sudut kemudi sekarang, sudut kemudi yang diinginkan dan koordinat tujuan (juga dikenal sebagai "pose"). Setelah Anda memberikan kecepatan pada robot, itu akan mulai bergerak ke arah koordinat tujuan. Dalam setiap iterasi, itu akan menghitung ulang posisinya dan membuat penyesuaian bila perlu.

Lenin Mishra
sumber