Remote Control Smartphone

Dalam dua artikel sebelumnya, saya berbicara tentang menggunakan smartphone untuk mengendalikan mobil mainan, baik secara langsung dengan suara, dan menggunakan smartphone bluetooth lainnya. Tetapi kontrolnya primitif - perintah diberikan, mobil menjalankan perintah, berhenti dan menunggu perintah berikutnya. Hal ini disebabkan oleh kecepatan tinggi kendaraan untuk kondisi dalam ruangan (sekitar 1,2 m / s), serta lama waktu perintah diberikan dan ketidakmampuan untuk dengan cepat melakukan intervensi dalam pergerakan menggunakan menu. Bahkan remote control standar tidak memungkinkan kontrol. Dalam versi baru kendali jarak jauh dengan antarmuka grafis, saya memutuskan untuk menggunakan PWM untuk menyesuaikan kecepatan dan mensimulasikan kemudi.



Gambar menunjukkan mesin yang dikendalikan oleh ponsel cerdas, dan di bawah ponsel cerdas dengan program remote control bluetooth yang berfungsi.

Di bagian atas layar adalah slider (lingkaran hijau), digerakkan dengan jari Anda.

gambar

Saat melepaskan jari dari layar, jarak relatif dari slider ke batas kiri layar ditransmisikan ke smartphone kontrol, di mana modulasi latitudinal dari sinyal pulsa terbentuk.

GR.GET.POSITION c1, xx, yy r6=(xx-xc)*(xx-xc)+(yy-yc)*(yy-yc) IF r6<rkn THEN GR.TOUCH touched, x, y IF y < 120 THEN DO GR.TOUCH touched, x, y GR.GET.POSITION c1, x1,z1 GR.MOVE c1 ,x-x1, y1 GR.RENDER UNTIL !touched ENDIF GR.GET.POSITION c1, x1,z1 POPUP STR$(x1/w) BT.WRITE "#"+STR$(x1/w) ENDIF 

Siklus tugas terkecil dari sinyal adalah 20%, terbesar adalah 80%. Frekuensi teoritis yang memungkinkan adalah 10 Hz. Bahkan, mungkin sekitar 4 - 5 Hz, karena sinyal untuk modulasi masuk dalam aliran perintah umum dan beberapa dari mereka juga memiliki waktu tunda. Oleh karena itu, dengan siklus kerja rendah, getaran terlihat jelas.

Dua tombol hijau - maju ke depan, punggung bawah. Tombol merah kanan - diam. Dua tombol putih - menghentikan program pada remote control dan pada mesin tik. Di bagian bawah layar ada tiga tombol ungu untuk memilih arah gerakan ke kiri, lurus dan kanan. Di
Ketika mode yang sesuai dihidupkan, sebuah lingkaran dengan diameter yang lebih kecil dan sama, tetapi warna yang lebih gelap muncul di bagian tengah tombol. Selain tombol, saya juga menggunakan accelerometer untuk mengontrol arah gerakan. Ketika smartphone horisontal, proyeksi vektor percepatan gravitasi pada sumbu 0Y adalah 0, yang sesuai dengan gerakan secara langsung (lihat gambar di atas).



Jika Anda mengangkat sisi kiri smartphone, proyeksi akan dengan tanda +, yang akan sesuai dengan gerakan ke kanan.



Jika Anda mengangkat sisi kanan, maka dengan tanda - yang akan sesuai dengan gerakan ke kiri.
Program membaca bacaan accelerometer dan mengirimkan perintah yang sesuai ke smartphone yang mengendarai mobil, menampilkan mode pada tombol.

 SENSORS.READ 1, sx, sy, sz IF (sy<=1)&(sy>-1)&(lrsh) THEN rsh=1 lsh=1 lrsh=0 GR.HIDE cc13 GR.HIDE cc15 GR.SHOW cc17 GR.RENDER BT.write "f" pause 100 ENDIF IF (sy>2)&(rsh) THEN rsh=0 lsh=1 lrsh=1 GR.HIDE cc13 GR.HIDE cc17 GR.SHOW cc15 GR.RENDER BT.write "r" pause 100 ENDIF IF (sy<-2)&(lsh) THEN lsh=0 rsh=1 lrsh=1 GR.HIDE cc17 GR.HIDE cc15 GR.SHOW cc13 GR.RENDER BT.write "l" pause 100 ENDIF 

Inilah cara kerja remote control. Pengoperasian program kontrol mobil juga telah mengalami perubahan, tetapi tidak terlalu signifikan. Di masa depan, saya ingin menambah program dengan fungsi menghafal perintah dan menjalankannya dalam mode otomatis.

Source: https://habr.com/ru/post/id428828/


All Articles