Sensor Optik#
Perkenalan#
Sensor Optik EXP mendeteksi warna, kecerahan, dan keberadaan objek di sekitarnya menggunakan kombinasi sensor warna RGB dan sensor jarak. Sensor ini juga dapat menggunakan LED bawaannya untuk menerangi objek agar deteksi lebih akurat.

Halaman ini menggunakan optical_sensor sebagai contoh nama Sensor Optik. Ganti dengan nama yang Anda konfigurasi sendiri sesuai kebutuhan.
Berikut adalah daftar metode yang tersedia:
set_light– Menyalakan atau mematikan LED Sensor Optik.set_light_power– Mengatur tingkat daya cahaya Sensor Optik.is_near_object– Mengembalikan nilai boolean yang menunjukkan apakah Sensor Optik mendeteksi objek dalam jangkauan.color– Mengembalikan warna yang terdeteksi oleh Sensor Optik.brightness– Mengembalikan jumlah cahaya yang dipantulkan dari objek.hue– Mengembalikan hue yang terdeteksi oleh Sensor Optik.object_detected– Mendaftarkan fungsi yang akan dipanggil ketika Sensor Optik mendeteksi suatu objek.object_lost– Mendaftarkan fungsi yang akan dipanggil ketika Sensor Optik kehilangan objek.
Konstruktor – Menginisialisasi Sensor Optik secara manual.
Optical– Membuat Sensor Optik.
set_light#
Perintah set_light menghidupkan atau mematikan LED Sensor Optik. Ini dapat membantu meningkatkan akurasi sensor dalam mendeteksi warna.
Usage:
optical_sensor.set_light(state)
Parameter |
Keterangan |
|---|---|
negara |
Sets the LED on or off. |
# Turn on the sensor's LED
optical_sensor.set_light(LEDStateType.ON)
set_light_power#
set_light_power mengatur kecerahan LED Sensor Optik. Cahaya ini dapat membantu Sensor Optik mendeteksi objek dan warna dengan lebih jelas.
Jika lampu Sensor Optik mati, mengatur daya lampu di atas 0% akan menyalakan lampu tersebut.
Jika lampu Sensor Optik menyala, mengatur daya lampu ke 0% akan mematikan lampu tersebut.
Persentase yang lebih tinggi membuat cahaya lebih terang. Persentase yang lebih rendah membuat cahaya lebih redup.
Usage:
optical_sensor.set_light_power(percent, units)
Parameter |
Keterangan |
|---|---|
persen |
Nilai kecerahan LED berupa bilangan bulat. |
satuan |
Opsional. Satuan untuk mewakili kecerahan: |
# Turn on the sensor's light at half brightness
optical_sensor.set_light_power(50, PERCENT)
dekat_objek#
is_near_object mengembalikan nilai Boolean yang menunjukkan apakah Sensor Optik mendeteksi objek dalam jangkauan atau tidak.
True– Sensor Optik mendeteksi suatu objek.False– Sensor Optik tidak mendeteksi objek.
Usage:
optical_sensor.is_near_object()
Parameter |
Keterangan |
|---|---|
Metode ini tidak memiliki parameter. |
# Drive forward until an object is found
drivetrain.drive(FORWARD)
while not optical_sensor.is_near_object():
pass
drivetrain.stop()
warna#
color mengembalikan sebuah instance dari Color class, berdasarkan nilai hue yang terdeteksi. Ini dapat dibandingkan dengan objek Color yang telah ditentukan sebelumnya untuk membuat pernyataan kondisional.
Warna yang mungkin adalah:
Color.BLACKColor.WHITEColor.RED- Nilai rona antara 340° - 20°Color.GREEN- Nilai rona antara 80° - 140°Color.BLUE- Nilai rona antara 200° - 240°Color.YELLOW- Nilai rona antara 40° - 60°Color.ORANGE- Nilai rona antara 20° - 40°Color.PURPLE- Nilai rona antara 240° - 280°Color.CYAN- Nilai rona antara 140° - 200°
Catatan: Sensor Optik mencari rentang warna yang sesuai dengan warna yang ditentukan. Untuk mendeteksi rentang warna tertentu, lihat hue.
Usage:
optical_sensor.color()
Parameter |
Keterangan |
|---|---|
Metode ini tidak memiliki parameter. |
# Drive forward until red is found
drivetrain.drive(FORWARD)
while not optical_sensor.color() == Color.RED:
pass
drivetrain.stop()
kecerahan#
brightness mengembalikan jumlah cahaya yang dipantulkan dari objek sebagai desimal (float) yang mewakili persentase.
Persentase yang lebih tinggi berarti lebih banyak cahaya yang dipantulkan kembali ke Sensor Optik. Persentase yang lebih rendah berarti lebih sedikit cahaya yang dipantulkan kembali.
Usage:
optical_sensor.brightness()
Parameter |
Keterangan |
|---|---|
Metode ini tidak memiliki parameter. |
warna#
hue mengembalikan nilai hue dari warna yang terdeteksi sebagai desimal (float) dari 0 hingga 359.
Hue adalah cara untuk mendeskripsikan warna menggunakan angka-angka di sekitar roda warna.

Usage:
optical_sensor.hue()
Parameter |
Keterangan |
|---|---|
Metode ini tidak memiliki parameter. |
# Look for the color pink using hue
while True:
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
if 300 < optical_sensor.hue() < 359:
brain.screen.print("This is pink!")
else:
brain.screen.print("No pink detected!")
objek_terdeteksi#
object_detected mendaftarkan sebuah fungsi yang akan dipanggil setiap kali Sensor Optik mendeteksi objek baru.
Usage:
optical_sensor.object_detected(callback, arg)
Parameter |
Keterangan |
|---|---|
|
Sebuah fungsi yang telah didefinisikan sebelumnya yang akan dieksekusi ketika Sensor Optik mendeteksi objek baru. |
|
Opsional. Sebuah tuple yang berisi argumen untuk diteruskan ke fungsi callback. Lihat Menggunakan Fungsi dengan Parameter untuk informasi lebih lanjut. |
def my_function():
brain.screen.print("Optical Sensor detected an object")
# Call my_function whenever optical_sensor detects an object
optical_sensor.object_detected(my_function)
objek_hilang#
object_lost mendaftarkan sebuah fungsi yang akan dipanggil setiap kali Sensor Optik kehilangan objek yang terdeteksi.
Usage:
optical_sensor.object_lost(callback, arg)
Parameter |
Keterangan |
|---|---|
|
Sebuah fungsi yang telah didefinisikan sebelumnya yang akan dieksekusi ketika Sensor Optik kehilangan objek yang terdeteksi. |
|
Opsional. Sebuah tuple yang berisi argumen untuk diteruskan ke fungsi callback. Lihat Menggunakan Fungsi dengan Parameter untuk informasi lebih lanjut. |
def my_function():
brain.screen.print("Optical Sensor lost an object")
# Call my_function whenever optical_sensor loses an object
optical_sensor.object_lost(my_function)
Konstruktor#
Konstruktor digunakan untuk membuat objek Optical secara manual, yang diperlukan untuk mengkonfigurasi Sensor Optik di luar VEXcode.
Optical#
Optical menciptakan Sensor Optik.
Usage:
Optical(smartport)
Parameter |
Keterangan |
|---|---|
|
Port Pintar yang terhubung dengan Sensor Optik, ditulis sebagai |
# Create an Optical Sensor in Port 10
optical_sensor = Optical(Ports.PORT10)