Isi kandungan:

Pengaturcaraan Berdasarkan Acara di FTC: 4 Langkah
Pengaturcaraan Berdasarkan Acara di FTC: 4 Langkah

Video: Pengaturcaraan Berdasarkan Acara di FTC: 4 Langkah

Video: Pengaturcaraan Berdasarkan Acara di FTC: 4 Langkah
Video: Frekuensi RTV HD 2023 | Cara Mencari Siaran RTV di Telkom 4 2023 2024, November
Anonim
Pengaturcaraan Berdasarkan Acara di FTC
Pengaturcaraan Berdasarkan Acara di FTC

Tahun ini, pasukan kami telah melakukan banyak kerja dengan pembangunan perisian yang berdasarkan acara untuk robot kami. Program-program ini telah membolehkan pasukan untuk mengembangkan program autonomi secara tepat dan bahkan acara tele-op berulang. Oleh kerana kerja perisian yang diperlukannya rumit, kami memutuskan untuk berkongsi pengetahuan yang kami perolehi dalam mengembangkan kod berdasarkan acara untuk robot FTC.

Langkah 1: Apakah Pengaturcaraan Berdasarkan Acara?

Secara umum, pengaturcaraan berdasarkan acara, menurut Techopedia, adalah pengembangan program yang bertindak balas terhadap input pengguna. Dalam pengertian ini, banyak program dianggap berdasarkan acara, termasuk program tele-op pasukan, yang bergantung pada input dari pengawal yang dikendalikan oleh manusia untuk melakukan tindakan apa pun. Namun, dari segi pekerjaan yang telah dilakukan oleh pasukan kami, pengaturcaraan berdasarkan acara adalah untuk membuat perisian dari pelbagai input; dengan kata lain, kami mendokumentasikan peristiwa berdasarkan input pengawal dan sensor, maka kami dapat mengantri peristiwa ini dan menggunakan file untuk menjalankan kembali peristiwa yang direkam.

Kaedah mengembangkan program untuk robot kami mempunyai beberapa kelebihan:

  • Ini membolehkan kita membuat program autonomi yang tepat. Oleh kerana kami membuat perisian secara real-time semasa menjalani acara tersebut, nilai sensor yang dikumpulkan dan digunakan akan sangat tepat, kerana ia datang langsung dari peristiwa asal.
  • Ini membolehkan kita membuat program autonomi dengan cepat. Membuat program autonomi semudah merakam serangkaian peristiwa dan menyesuaikan acara jika perlu.
  • Ini membolehkan kita membuat proses automatik untuk tele-op. Untuk tindakan berulang dalam tele-op, pengaturcaraan berdasarkan acara membolehkan kita merakam tindakan ini dan menetapkan acara ke butang semasa tempoh pertandingan yang dikendalikan pemandu. Peristiwa automatik ini dapat dipengaruhi oleh sensor untuk membolehkan pelaksanaannya tepat.

Langkah 2: Aliran Logik Pengaturcaraan Berdasarkan Peristiwa

Aliran Logik Pengaturcaraan Berdasarkan Peristiwa
Aliran Logik Pengaturcaraan Berdasarkan Peristiwa

Berikut ini menggambarkan aliran logik program berdasarkan peristiwa: merah menggambarkan penciptaan acara, dan biru menggambarkan pemanggilan acara. Untuk membuat acara, urutan input diambil melalui aksi robot dan direkodkan sebagai peristiwa; peristiwa ini ditulis ke fail. Untuk memanggil acara, fail itu dibaca, dan input dikirim ke pemproses acara untuk mengubah kode file menjadi tindakan robot.

Langkah 3: Pencipta Acara

Pencipta Acara
Pencipta Acara
Pencipta Acara
Pencipta Acara

Pencipta acara digunakan untuk mendokumentasikan tindakan atau "peristiwa" berdasarkan pelbagai sensor dan butang. Ketika robot melakukan tindakan di lapangan, kelas pencipta acara membuat acara untuk setiap tindakan tersebut secara selari, merujuk peristiwa yang diklasifikasikan dalam kelas acara. Setelah dibuat, acara tersebut dimasukkan ke dalam barisan acara di kelas acara: acara pertama mengambil tempat teratas, kemudian acara kedua mengambil tempat teratas dan menurunkan setiap peristiwa di bawahnya, dan ini berterusan sehingga program berhenti. Apabila program dihentikan, acara akan keluar ke fail format yang dapat dibaca oleh manusia, seperti fail JSON. Fail ini dapat digunakan untuk memperbaiki rutin autonomi dengan lebih baik.

Contoh kod di atas menetapkan parameter untuk acara, yang dalam hal ini adalah giliran menggunakan sensor IMU. Kami kemudian mengarahkan acara menjadi barisan acara. Akhirnya, kami memotong acara, yang pada dasarnya mengatur semula acara sehingga kami dapat menggunakannya untuk mengantri acara di masa depan.

Langkah 4: Pemproses Acara

Pemproses Acara
Pemproses Acara
Pemproses Acara
Pemproses Acara

Kelas acara mengambil fail yang dapat dibaca manusia yang dihasilkan di kelas pembuat acara dan melakukan apa sahaja yang disuruh oleh setiap barisan acara dengan memanggil kaedah yang digariskan dalam kelas pemproses acara. Kelas pemproses acara kemudian memberitahu robot acara apa yang akan dimainkan semula. Sama ada acara "drive forward" sederhana atau acara kompleks yang penuh dengan jarak, belokan, dan straf, pemproses akan memainkan semula setiap acara yang diberikan kepadanya. Proses ini sangat berguna semasa autonomi, kerana satu pasukan dapat merakam sensor dan tindakan Tele-Op sebelum bertanding, kemudian hanya memutar ulang acara secara autonomi. Proses ini dipanggil Memory Replay. Ini membolehkan program autonomi dapat dikonfigurasi 100% melalui satu fail. Setelah pembuat dan pemproses acara ditetapkan, satu pasukan dapat mengubah rutin autonomi melalui fail yang dapat dibaca oleh manusia.

Contoh di atas mula-mula dengan memeriksa fail JSON untuk suatu peristiwa, dan kemudian memeriksa peristiwa itu menggunakan pernyataan kes untuk melihat jenis peristiwa itu, dalam hal ini giliran menggunakan sensor IMU. Setelah dapat mengetahui bahawa ini adalah giliran menggunakan peristiwa IMU, ia kemudian berurusan dengan memproses acara, yang biasanya melibatkan menjalankan kod yang peristiwa itu berasal dari menggunakan pemboleh ubah dari acara, diteruskan untuk meniru peristiwa yang dilakukan sebelumnya.

Disyorkan: