PIC Lesson: Ultrasonic Range Finder


Ultrasonic adalah bunyi yang mempunyai frekuensi tinggi melebihi frekuensi yang boleh di dengar oleh manusia. Ultrasonic di aplikasikan untuk sensor mengesan objek. Berikut adalah salah satu ultrasonic sensor iaitu MaxSonar.

MaxSonar Range Finder boleh mengesan objek dari 6-255 inches (15cm – 6.45m). Bacaan sensor MaxSonar boleh di ambil daripada analog output (10mV/inch), serial output (RS232 format) ataupun pulse width output (147uS/inch). Di bawah adalah litar Maxsonar Ultrasonic.

Bacaan daripada analog:

Bacaan daripada serial adalah “R” kemudian diikuti tiga digit nilai jarak dalam inch. Bacaan daripada pulse width pula menggunakan timer interrupt. Satu kiraan bersamaan 51.2uS.

Berikut adalah videonya.

PIC Source Code

Sertai Telegram Group bagi dapatkan source code


38 responses to “PIC Lesson: Ultrasonic Range Finder”

  1. Sensor ultrasonic tu sambung port “AN” ke?
    Boleh tak sambung direct dari output ultrasonic ke pic kaki RA0/RA1?

    dan mcm mana nk setting ADC.

    • Contoh di atas menggunakan ketiga-tiga output. Analog output sambung ke RA0/AN0, serial output sambung ke RC7/RX melalui MAX232 dan pulse width output sambung ke RB0/INT.
      Nak setting ADC, guna function read_a2d(0).

  2. hello,saya orang baru dalam bidang microelectronic dan saya sangat berminat untuk memcuba projek ini,tapi saya masih ragu2 dengan connection circuit projek ini dengan PIC16F877A yang awak gunakan. Boleh tak awak emailkan saya schematic projek ini?
    terima kasih.

  3. salam en,
    saya nak tanya daripada ic max232, perlu sambung ke pic16 lain ke? sambungan RC7 tu kemana?

    terima kasih

  4. boleh tak sy gunakan ultrasonic range finder ini sebagai motion sensor sahaja dan buzzer menjadi output tanpa perlu menunjukkan jarak?

  5. salam,
    saya student utm n refer projek en utk buat final project.
    bleh saya tahu x port2 PIC utk smbungan LCD…

    terima kasih.

  6. saya hendak menggunakan analog voltage sahaja.. bole ke kalau pakai coding di atas??? atau perlu edit?? saya noob sangat2 pasal coding…

  7. SALAM.. saya nak tanya pasal programming saudara..
    >>>>>>>>>>>
    serial=100*(sonic[1]-0x30)+10*(sonic[2]-0x30)+(sonic[3]-0x30);
    serial=(int)(2.54*serial);
    mana saudara dapat equation untuk serial ni?

    • ws, equation sendiri drpd datasheet. Ultrasonic bg bacaan ‘R’ kemudian 3 digit ASCII. Tukarkan 3 digit ASCII kpd satu nilai. Nilainya dalam inch, tukar kpd cm.

  8. where i get
    #include “LibraryHardware.h”
    #include “LibraryPeripheral.h”
    #include “LibraryUniversalDisplay.h”

Leave a Reply to yah Cancel reply

Your email address will not be published. Required fields are marked *