Semua sensor ev3 memiliki nama yang benar. Menghubungkan dua atau lebih batu bata EV3

Secara tradisional, robot dibangun di atas platform Lego Mindstorms EV3, diprogram menggunakan lingkungan grafis LabVIEW. Dalam hal ini, program dijalankan pada pengontrol EV3 dan robot beroperasi secara mandiri. Di sini saya akan berbicara tentang cara alternatif untuk mengendalikan robot - menggunakan platform .NET yang berjalan di komputer.

Namun sebelum kita masuk ke pemrograman, mari kita lihat beberapa kasus yang mungkin berguna:

  • Memerlukan kendali jarak jauh robot dari laptop (misalnya dengan menekan tombol)
  • Diperlukan untuk mengumpulkan data dari pengontrol EV3 dan memprosesnya pada sistem eksternal (misalnya, untuk sistem IoT)
  • Situasi lain ketika Anda ingin menulis algoritma kontrol di .NET dan menjalankannya dari komputer yang terhubung ke pengontrol EV3

API LEGO MINDSTORMS EV3 untuk .NET

Pengontrol EV3 dikendalikan dari sistem eksternal dengan mengirimkan perintah ke port serial. Format perintahnya sendiri dijelaskan dalam Kit Pengembang Komunikasi.

Namun menerapkan protokol ini secara manual itu membosankan. Oleh karena itu, Anda dapat menggunakan pembungkus .NET yang sudah jadi, yang ditulis dengan cermat oleh Brian Peek. Kode sumber untuk perpustakaan ini dihosting di Github, dan paket siap pakai dapat ditemukan di Nuget.

Menghubungkan ke Pengontrol EV3

Kelas Brick digunakan untuk berkomunikasi dengan pengontrol EV3. Saat membuat objek ini, Anda perlu meneruskan implementasi antarmuka ICommunication ke konstruktor - sebuah objek yang menjelaskan cara menyambung ke pengontrol EV3. Implementasi Komunikasi Usb, Komunikasi Bluetooth, dan Komunikasi Jaringan (koneksi WiFi) tersedia.

Metode koneksi paling populer adalah melalui Bluetooth. Mari kita lihat lebih dekat metode koneksi ini.

Sebelum kita dapat terhubung secara terprogram ke pengontrol melalui Bluetooth, pengontrol harus terhubung ke komputer menggunakan pengaturan sistem operasi.

Setelah pengontrol terhubung, buka pengaturan Bluetooth dan pilih tab port COM. Kami menemukan pengontrol kami, kami membutuhkannya keluar pelabuhan. Kami akan menentukannya saat membuat objek BluetoothCommunication.

Kode untuk terhubung ke pengontrol akan terlihat seperti ini:

Sambungan Tugas async publik (Komunikasi IKomunikasi) ( var komunikasi = komunikasi Bluetooth baru("COM9"); var brick = _brick = bata baru(komunikasi); menunggu _brick.ConnectAsync(); )

Secara opsional, Anda dapat menentukan batas waktu koneksi ke pengontrol:

Tunggu _brick.ConnectAsync(TimeSpan.FromSeconds(5));

Menghubungkan ke unit melalui USB atau WiFi dilakukan dengan cara yang sama, dengan pengecualian objek UsbCommunication dan NetworkCommunication digunakan.

Semua tindakan lebih lanjut yang dilakukan pada pengontrol dilakukan melalui objek Brick.

Ayo putar mesinnya

Untuk menjalankan perintah pada pengontrol EV3, kita mengakses properti DirectCommand dari objek Brick. Pertama, mari kita coba menghidupkan mesinnya.

Misalkan motor kita terhubung ke port A pengontrol, maka menjalankan motor ini dengan daya 50% akan terlihat seperti ini:

Tunggu _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.A, 50);

Ada metode lain untuk mengendalikan motor. Misalnya, Anda dapat memutar motor ke sudut tertentu menggunakan metode StepMotorAtPowerAsync() dan StepMotorAtSpeedAsync(). Ada beberapa metode yang tersedia, yaitu variasi cara menyalakan motor - berdasarkan waktu, kecepatan, tenaga, dll.

Penghentian paksa dilakukan menggunakan metode StopMotorAsync():

Tunggu _brick.DirectCommand.StopMotorAsync(OutputPort.A, true);

Parameter kedua menunjukkan penggunaan rem. Jika Anda menyetelnya ke false, motor akan berhenti.

Membaca nilai dari sensor

Pengontrol EV3 memiliki empat port untuk menghubungkan sensor. Selain itu, motor juga memiliki encoder internal, yang memungkinkannya digunakan sebagai sensor. Hasilnya, kami memiliki 8 port tempat nilainya dapat dibaca.

Port untuk membaca nilai dapat diakses melalui properti Ports pada objek Brick. Ports adalah kumpulan port yang tersedia pada pengontrol. Oleh karena itu, untuk bekerja dengan port tertentu, Anda harus memilihnya. InputPort.One ... InputPort.Four adalah port sensor, dan InputPort.A ... InputPort.D adalah encoder motor.

Var port1 = _brick.Port;

Sensor di EV3 dapat beroperasi dalam mode berbeda. Misalnya, Sensor Warna EV3 dapat digunakan untuk mengukur cahaya sekitar, mengukur cahaya yang dipantulkan, atau mendeteksi warna. Oleh karena itu, untuk “memberi tahu” sensor bagaimana kita ingin menggunakannya, kita perlu mengatur modenya:

Brick.Ports.SetMode(ColorMode.Reflective);

Sekarang sensor telah terhubung dan mode pengoperasiannya telah diatur, Anda dapat membaca data darinya. Anda bisa mendapatkan data “mentah”, nilai olahan, dan nilai persentase.

Float si = _brick.Ports.SIValue; int mentah = _brick.Ports.RawValue; byte persen = _brick.Ports.PercentValue;

Properti SIValue mengembalikan data yang diproses. Itu semua tergantung pada sensor mana yang digunakan dan dalam mode apa. Misalnya saat mengukur cahaya yang dipantulkan, kita akan mendapatkan nilai dari 0 hingga 100 tergantung pada intensitas cahaya yang dipantulkan (hitam/putih).

Properti RawValue mengembalikan nilai mentah yang diperoleh dari ADC. Terkadang lebih nyaman menggunakannya untuk pemrosesan dan penggunaan selanjutnya. Omong-omong, di lingkungan pengembangan EV3 juga dimungkinkan untuk mendapatkan nilai "mentah" - untuk ini Anda perlu menggunakan blok dari panel biru.

Jika sensor yang Anda gunakan mengharapkan menerima nilai dalam persentase, Anda juga dapat menggunakan properti PercentValue.

Menjalankan perintah secara batch

Katakanlah kita memiliki kereta robot beroda dua dan kita ingin memasangnya di tempatnya. Dalam hal ini kedua roda harus berputar berlawanan arah. Jika kita menggunakan DirectCommand dan mengirimkan dua perintah secara berurutan ke pengontrol, mungkin ada waktu yang berlalu di antara eksekusinya:

Tunggu _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.A, 50); tunggu _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.B, -50);

Pada contoh ini kita mengirimkan perintah untuk memutar motor A dengan kecepatan 50, setelah pengiriman perintah ini berhasil, kita ulangi hal yang sama dengan motor yang terhubung ke port B. Soalnya pengiriman perintah tidak terjadi secara instan, sehingga motor mungkin mulai berputar pada waktu yang berbeda - saat perintah sedang dikirim untuk port B, motor A sudah akan mulai berputar.

Jika penting bagi kita untuk membuat motor berputar pada saat yang sama, kita dapat mengirimkan perintah ke pengontrol dalam sebuah “bundel”. Dalam hal ini, Anda harus menggunakan properti BatchCommand dan bukan DirectCommand:

Brick.BatchCommand.TurnMotorAtPower(OutputPort.A, 50); _brick.BatchCommand.TurnMotorAtPower(OutputPort.B, -50); menunggu _brick.BatchCommand.SendCommandAsync();

Sekarang dua perintah disiapkan sekaligus, setelah itu dikirim ke pengontrol dalam satu paket. Pengontrol, setelah menerima perintah ini, akan mulai memutar motor secara bersamaan.

Apa lagi yang bisa Anda lakukan

Selain memutar motor dan membaca nilai sensor, Anda dapat melakukan sejumlah tindakan lain pada pengontrol EV3. Saya tidak akan merinci masing-masingnya, saya hanya akan mencantumkan daftar apa yang dapat dilakukan:

  • CleanUIAsync(), DrawTextAsync(), DrawLineAsync(), dll. - manipulasi layar internal pengontrol EV3
  • PlayToneAsync() dan PlaySoundAsync() - gunakan speaker internal untuk memutar suara
  • WriteFileAsync() , CopyFileAsync() , DeleteFileAsync() (dari SystemCommand) - bekerja dengan file

Kesimpulan

Penggunaan .NET untuk mengendalikan robot Mindstorms EV3 menunjukkan dengan baik bagaimana teknologi dari “dunia berbeda” dapat bekerja sama. Sebagai hasil penelitian API EV3 untuk .NET, sebuah aplikasi kecil telah dibuat yang memungkinkan Anda mengontrol robot EV3 dari komputer. Sayangnya, aplikasi serupa ada untuk NXT, tetapi EV3 mengabaikannya. Pada saat yang sama, mereka berguna dalam kompetisi robot yang dikendalikan, seperti robot sepak bola.

Aplikasinya dapat diunduh dan diinstal dari tautan ini:

Jika Anda, seperti kami, tidak memiliki kemampuan sensor EV3 standar, 4 port untuk sensor di robot Anda tidak cukup, atau Anda ingin menghubungkan beberapa periferal eksotis ke robot Anda - artikel ini cocok untuk Anda. Percayalah, sensor buatan sendiri untuk EV3 lebih sederhana dari yang terlihat. Sebuah “kenop volume” dari radio tua atau sepasang paku yang ditancapkan ke tanah dalam pot bunga sebagai sensor kelembaban tanah sangat cocok untuk percobaan ini.

Anehnya, setiap port sensor EV3 menyembunyikan sejumlah protokol berbeda, terutama untuk kompatibilitas dengan NXT dan sensor pihak ketiga. Mari kita lihat cara kerja kabel EV3


Aneh memang, tapi kabel merahnya ground (GND), kabel hijau plus power supply 4.3V. Kabel biru adalah SDA untuk bus I2C dan TX untuk protokol UART. Selain itu, kabel biru merupakan input konverter analog-ke-digital untuk EV3. Kabel kuning adalah SCL untuk bus I2C dan RX untuk protokol UART. Kabel putih adalah input konverter analog-ke-digital untuk sensor NXT. Hitam - input digital, untuk sensor yang kompatibel dengan NXT - ini menduplikasi GND. Tidak mudah, bukan? Ayo berangkat secara berurutan.

Masukan analog EV3

Setiap port sensor memiliki saluran konverter analog-ke-digital. Ini digunakan untuk sensor seperti Sensor Sentuh (tombol), Sensor Cahaya NXT dan Sensor Warna dalam mode cahaya pantulan dan cahaya sekitar, Sensor Suara NXT dan Termometer NXT.

Resistansi 910 Ohm, dihubungkan sesuai diagram, memberitahu pengontrol bahwa port ini harus dialihkan ke mode input analog. Dalam mode ini, Anda dapat menghubungkan sensor analog apa pun ke EV3, misalnya dari Arduino. Nilai tukar dengan sensor seperti itu bisa mencapai beberapa ribu polling per detik; ini adalah jenis sensor tercepat.

Sensor cahaya

Termometer

Sensor kelembaban tanah

Anda juga dapat menghubungkan: mikrofon, tombol, pengintai IR, dan banyak sensor umum lainnya. Jika daya 4.3V tidak mencukupi untuk sensor, Anda dapat menyalakannya dengan 5V dari port USB yang terletak di samping pengontrol EV3.

“Kenop volume” yang disebutkan di atas (juga dikenal sebagai resistor variabel atau potensiometer) adalah contoh bagus dari sensor analog - dapat dihubungkan seperti ini:

Untuk membaca nilai dari sensor tersebut di lingkungan pemrograman LEGO standar, Anda harus menggunakan blok RAW berwarna biru

protokol I2C

Ini adalah protokol digital; misalnya, sensor ultrasonik NXT dan banyak sensor Hitechnic, seperti IR Seeker atau Color Sensor V2, bekerja di dalamnya. Untuk platform lain, misalnya Arduino, sensor i2c banyak sekali, Anda juga bisa menghubungkannya. Skemanya adalah sebagai berikut:

Resistansi sebesar 82 ohm direkomendasikan oleh LEGO Group, namun berbagai sumber menyebutkan 43 ohm atau kurang. Faktanya, kami mencoba untuk mengabaikan penolakan ini dan semuanya berjalan baik, setidaknya “di atas meja”. Pada robot nyata yang beroperasi dalam kondisi berbagai macam interferensi, jalur SCL dan SDA harus tetap dihubungkan ke catu daya melalui hambatan, seperti ditunjukkan pada diagram di atas. Kecepatan pengoperasian i2c di EV3 cukup rendah, sekitar 10.000 kbps, itulah sebabnya Hitechnic Color Sensor V2 favorit semua orang sangat lambat :)

Sayangnya, untuk EV3-G standar dari LEGO tidak ada blok penuh untuk komunikasi dua arah dengan sensor i2c, tetapi menggunakan lingkungan pemrograman pihak ketiga seperti RobotC, LeJOS atau EV3 Basic Anda dapat berinteraksi dengan hampir semua sensor i2c .

Kemampuan EV3 untuk beroperasi menggunakan protokol i2c membuka kemungkinan menarik untuk menghubungkan beberapa sensor ke satu port. Protokol I2C memungkinkan Anda menghubungkan hingga 127 perangkat budak ke satu bus. Bisakah Anda bayangkan? 127 sensor untuk setiap port EV3 :) Apalagi seringkali sekumpulan sensor i2c digabungkan dalam satu perangkat, misalnya pada foto di bawah ini terdapat sensor 10 in 1 (berisi kompas, giroskop, akselerometer, barometer, dll.)

UART

Hampir semua sensor non-EV3 standar, kecuali Sensor Sentuh, beroperasi menggunakan protokol UART dan itulah mengapa sensor tersebut tidak kompatibel dengan pengontrol NXT, yang meskipun memiliki konektor yang sama, UART tidak diterapkan pada sensornya. pelabuhan. Lihatlah diagramnya, ini sedikit lebih sederhana dari kasus sebelumnya:

Sensor UART secara otomatis mencocokkan kecepatan operasinya dengan EV3. Awalnya terhubung dengan kecepatan 2400 kbit/s, mereka menyetujui mode operasi dan nilai tukar, kemudian beralih ke kecepatan yang ditingkatkan. Nilai tukar tipikal untuk sensor yang berbeda adalah 38400 dan 115200 kbit/s.
LEGO telah menerapkan protokol yang agak rumit pada sensor UART-nya, sehingga tidak ada sensor pihak ketiga yang awalnya tidak ditujukan untuk platform ini, namun kompatibel dengannya. Namun demikian, protokol ini sangat nyaman untuk menghubungkan "buatan sendiri"
sensor berbasis mikrokontroler.
Ada perpustakaan luar biasa untuk Arduino yang disebut EV3UARTEmulation, yang ditulis oleh pengembang LeJOS terkenal Lawrie Griffiths, yang memungkinkan papan ini berpura-pura menjadi sensor yang kompatibel dengan UART-LEGO. Blog LeJOS News miliknya memiliki banyak contoh menghubungkan sensor gas, sensor IMU, dan kompas digital menggunakan perpustakaan ini.

Video di bawah ini adalah contoh penggunaan sensor buatan sendiri. Kami tidak memiliki cukup sensor jarak LEGO asli, jadi kami menggunakan sensor buatan sendiri pada robot:


Tugas robot adalah memulai dari sel hijau, mencari jalan keluar dari labirin (sel merah) dan kembali ke titik awal melalui rute terpendek, tanpa menemui jalan buntu.

Pilih mode layar

Mode pilihan
Blokir bidang teks
masukan
Tombol pratinjau

Pilih jenis teks atau grafik yang ingin Anda lihat menggunakan pemilih mode. Setelah memilih mode, Anda dapat memilih nilai input. Input yang tersedia akan bervariasi tergantung pada modenya. Mode dan input dijelaskan di bawah ini.

Anda dapat mengklik tombol Pratinjau untuk melihat pratinjau apa yang akan ditampilkan blok Tampilan di layar EV3. Anda dapat membiarkan tampilan terbuka sambil memilih nilai input untuk blok tersebut.

Koordinat layar

Banyak mode blok Layar menggunakan koordinat X dan Y untuk menentukan lokasi elemen. Koordinat menentukan posisi piksel pada layar EV3 Brick. Posisi (0, 0) berada di pojok kiri atas layar seperti terlihat pada gambar di bawah ini.

Dimensi layar: lebar 178 piksel dan tinggi 128 piksel. Kisaran nilai koordinat X adalah dari 0 di layar kiri hingga 177 di kanan. Kisaran nilai koordinat Y adalah dari 0 di atas hingga 127 di bawah.

Tip dan trik

Anda dapat menggunakan tombol Pratinjau di sudut kiri atas blok Layar untuk membantu Anda menemukan koordinat layar yang benar.

Teks - Piksel

Teks - Mode Piksel memungkinkan Anda menampilkan teks di mana saja di layar EV3 Brick.

Setel ulang jendela

Mode Reset Window mengembalikan layar EV3 Brick ke layar informasi standar yang ditampilkan saat program sedang berjalan. Layar ini menampilkan nama program dan informasi umpan balik lainnya. Saat Anda menjalankan program di EV3 Brick, layar ini muncul sebelum blok Layar pertama dari program tersebut dijalankan.

Memastikan visibilitas elemen yang ditampilkan

Ketika Program EV3 selesai, layar EV3 Brick hilang dan kembali ke layar Menu EV3 Brick. Teks atau gambar apa pun yang ditampilkan oleh program akan dihapus. Jika, misalnya, program Anda memiliki satu blok "Layar" dan tidak ada yang lain, maka layar akan dibersihkan dengan sangat cepat segera setelah program berakhir sehingga Anda tidak akan melihat hasil dari blok "Layar".

Jika Anda ingin layar tetap terlihat setelah program selesai, Anda harus menambahkan blok di akhir program untuk mencegah program segera berakhir, seperti yang ditunjukkan pada contoh berikut.

Menampilkan banyak item

Jika Anda ingin menampilkan beberapa teks atau elemen grafis pada layar secara bersamaan, penting untuk tidak menghapus layar EV3 Brick antar elemen. Setiap mode blok Layar memiliki input Clear Screen. Jika Hapus Layar benar, seluruh layar akan dibersihkan sebelum item ditampilkan. Artinya untuk menampilkan banyak item, Anda harus mengatur Clear Screen ke False untuk setiap blok Layar kecuali yang pertama.

Menampilkan angka

Untuk menampilkan nilai numerik dalam program Anda, sambungkan bus data ke input Teks dari blok Tampilan Teks. Bus data numerik akan secara otomatis dikonversi menjadi teks menggunakan konversi jenis bus data (lihat bagian

Deskripsi presentasi berdasarkan slide individual:

1 slide

Deskripsi slide:

2 geser

Deskripsi slide:

Antarmuka Bata EV3 Bata EV3 adalah pusat kendali yang menggerakkan robot Anda. Dengan layar, tombol kontrol Brick, dan antarmuka EV3 Brick, yang berisi empat jendela utama, Anda memiliki akses ke beragam fitur unik EV3 Brick yang menakjubkan. Ini bisa berupa fungsi sederhana, seperti memulai dan menghentikan suatu program, atau yang rumit, seperti menulis program itu sendiri.

3 geser

Deskripsi slide:

Antarmuka: Menu EV3 memiliki menu yang terdiri dari 4 bagian: Program Terkini Navigasi File Aplikasi Bata Pengaturan Bata

4 geser

Deskripsi slide:

Program Terbaru Luncurkan program yang baru saja diunduh dari PC desktop Anda. Jendela ini akan tetap kosong sampai Anda mulai mengunduh dan menjalankan program. Jendela ini akan menampilkan program yang baru saja Anda luncurkan. Program di bagian atas daftar, yang dipilih secara default, adalah program yang terakhir kali diluncurkan.

5 geser

Deskripsi slide:

Manajer File Mengakses dan mengelola semua file yang disimpan di memori komputer mikro, serta di kartu memori. Dari jendela ini Anda akan mengakses dan mengelola semua file di EV3 Brick Anda, termasuk file yang disimpan di kartu SD. File-file tersebut disusun dalam folder proyek, yang selain file program sebenarnya, juga berisi suara dan gambar yang digunakan dalam setiap proyek. File dapat dipindahkan atau dihapus menggunakan file navigator. Program yang dibuat menggunakan lingkungan pemrograman modul dan aplikasi pencatatan data modul disimpan secara terpisah di folder BrkProg_SAVE dan BrkDL_SAVE.

6 geser

Deskripsi slide:

Aplikasi Kotak Kontrol EV3 memiliki 4 aplikasi pra-instal: A. Port View. B.Pengendalian motorik. B.Kontrol IR. D. Lingkungan pemrograman modul.

7 geser

Deskripsi slide:

A. Port View Di jendela pertama aplikasi Port View, Anda dapat dengan cepat melihat port mana yang memiliki sensor atau motor yang terhubung dengannya. Gunakan tombol kontrol EV3 Brick untuk menavigasi ke salah satu port yang ditempati dan Anda akan melihat pembacaan arus dari sensor atau motor. Pasang beberapa sensor dan motor dan bereksperimenlah dengan pengaturan berbeda. Untuk melihat atau mengubah pengaturan saat ini untuk motor dan sensor yang terpasang, tekan tombol tengah. Untuk kembali ke jendela aplikasi utama modul, klik tombol “Kembali”.

8 geser

Deskripsi slide:

B. Kontrol Motor Mengontrol gerakan maju atau mundur dari setiap motor yang terhubung ke salah satu dari empat port keluaran. Ada dua mode berbeda. Dalam satu mode, Anda dapat mengontrol motor yang terhubung ke port A (menggunakan tombol Atas dan Bawah) dan ke port D (menggunakan tombol Kiri dan Kanan). Dalam mode lainnya, Anda mengontrol motor yang terhubung ke port B (menggunakan tombol Atas dan Bawah) dan port C (menggunakan tombol Kiri dan Kanan). Peralihan antara dua mode ini dilakukan dengan menggunakan tombol tengah. Untuk kembali ke jendela aplikasi utama modul, klik tombol “Kembali”.

Geser 9

Deskripsi slide:

Kontrol IR Mengontrol gerakan maju atau mundur motor apa pun yang terhubung ke salah satu dari empat port keluaran menggunakan suar inframerah jarak jauh sebagai kendali jarak jauh dan sensor inframerah sebagai penerima (sensor inframerah harus terhubung ke port 4 pada Bata EV3) . Ada dua mode berbeda. Dalam satu mode Anda akan menggunakan saluran 1 dan 2 pada suar inframerah jarak jauh. Pada saluran 1, Anda akan dapat mengontrol motor yang terhubung ke port B (menggunakan tombol 1 dan 2 pada suar IR jarak jauh) dan port C (menggunakan tombol 3 dan 4 pada suar IR jarak jauh). Pada saluran 2 Anda akan dapat mengontrol motor yang terhubung ke port A (menggunakan tombol 1 dan 2) dan ke port D (menggunakan tombol 3 dan 4). Dalam mode lain, Anda dapat mengontrol motor dengan cara yang sama, menggunakan saluran 3 dan 4 pada suar inframerah jarak jauh. Peralihan antara dua mode ini dilakukan dengan menggunakan tombol tengah. Untuk kembali ke jendela aplikasi utama modul, klik tombol “Kembali”.

10 geser

Deskripsi slide:

Lingkungan Pemrograman Bata EV3 Brick dilengkapi dengan perangkat lunak yang diinstal di dalamnya. Aplikasi ini mirip dengan perangkat lunak yang diinstal pada komputer Anda. Petunjuk ini berisi informasi dasar yang Anda perlukan untuk memulai.

11 geser

Deskripsi slide:

EV3 Brick Settings Jendela ini memungkinkan Anda untuk melihat dan menyesuaikan berbagai pengaturan umum di EV3 Brick.

12 geser

Deskripsi slide:

Menyesuaikan Volume Anda dapat menambah atau mengurangi Volume di tab Pengaturan di EV3.

Geser 13

koneksi USB

LEGO Mindstorms EV3 dapat terhubung ke PC atau EV3 lainnya melalui koneksi USB. Kecepatan dan stabilitas koneksi dalam hal ini lebih baik dibandingkan metode lainnya, termasuk Bluetooth.

LEGO Mindstorms EV3 memiliki dua port USB.

Komunikasi antara LEGO EV3 dan blok LEGO EV3 lainnya dalam mode rantai daisy.

Mode rantai daisy digunakan untuk menghubungkan dua atau lebih blok LEGO EV3.

Modus ini:

  • dirancang untuk menghubungkan lebih dari satu LEGO Mindstorms EV3;
  • berfungsi untuk menghubungkan lebih banyak sensor, motor dan perangkat lainnya;
  • memungkinkan komunikasi antara beberapa LEGO Mindstorms EV3 (hingga 4), yang memberi kita hingga 16 port eksternal dan jumlah port internal yang sama;
  • memungkinkan untuk mengontrol seluruh rantai dari LEGO Mindstorms EV3 utama;
  • tidak dapat berfungsi saat Wi-Fi atau Bluetooth aktif.

Untuk mengaktifkan mode koneksi rantai daisy, buka jendela pengaturan proyek dan centang kotak.

Jika mode ini dipilih, maka untuk motor apa pun kita dapat memilih blok EV3 yang akan digunakan dan sensor yang diperlukan.

Tabel menunjukkan opsi untuk menggunakan blok EV3:

Tindakan

motorik sedang

motorik besar

Pengemudian

Manajemen independen

Giroskopik

Inframerah

ultrasonik

Rotasi motorik

Suhu

Pengukur energi

Suara

Koneksi melalui Bluetooth

Bluetooth memungkinkan LEGO Mindstorms EV3 terhubung ke PC, LEGO Mindstorms EV3 lainnya, ponsel cerdas, dan perangkat Bluetooth lainnya. Jangkauan komunikasi melalui Bluetooth hingga 25 m.

Anda dapat menghubungkan hingga 7 blok ke satu LEGO Mindstorms EV3. EV3 Master Brick memungkinkan Anda mengirim dan menerima pesan ke setiap EV3 Slave. Budak EV3 hanya dapat mengirim pesan ke EV3 Master Brick, tidak satu sama lain.

Urutan koneksi EV3 melalui Bluetooth

Untuk menghubungkan dua atau lebih blok EV3 satu sama lain melalui Bluetooth, Anda perlu melakukan langkah-langkah berikut:

1. Buka tab Pengaturan.

2. Pilih Bluetooth dan tekan tombol tengah.

3. Kami menempatkan kotak centang visibilitas Bluetooth.

4. Periksa apakah tanda Bluetooth ("<") виден на верхней левой стороне.

5. Lakukan prosedur di atas untuk jumlah Batu Bata EV3 yang dibutuhkan.

6. Buka tab Koneksi:

7. Klik tombol Cari:

8. Pilih EV3 yang ingin Anda sambungkan (atau ke mana Anda ingin terhubung) dan tekan tombol tengah.

9. Kami menghubungkan blok pertama dan kedua dengan kunci akses.

Jika Anda melakukan semuanya dengan benar, ikon " akan muncul di pojok kiri atas<>", sambungkan blok EV3 lainnya dengan cara yang sama jika jumlahnya lebih dari dua.

Jika Anda mematikan LEGO EV3, koneksi akan terputus dan Anda harus mengulangi semua langkah.

Penting: setiap blok harus memiliki program tertulisnya sendiri.

Contoh program:

Blok Pertama: Saat sensor sentuh ditekan, Blok EV3 pertama mengirimkan teks ke Blok kedua dengan penundaan 3 detik (Blok Utama).

Contoh program untuk blok 2:

Blok kedua menunggu untuk menerima teks dari blok pertama, dan setelah menerimanya, ia akan menampilkan sebuah kata (dalam contoh kita, kata "Halo") selama 10 detik (blok budak).

Terhubung melalui Wi-Fi

Komunikasi jarak jauh dapat dilakukan dengan menghubungkan Dongle Wi-Fi ke port USB di EV3.

Untuk menggunakan Wi-Fi, Anda perlu memasang modul khusus pada blok EV3 menggunakan konektor USB (adaptor Wi-Fi (Netgear N150 Wireless Adapter (WNA1100), atau Anda dapat menghubungkan Dongle Wi-Fi.