Zum Inhalt springen

Wie erstelle ich ein Raspberry Pi-Radar?

14 Dec 2023
How to Make Raspberry Pi Radar?
Wie würden Sie gerne Radar, das wir oft in Filmen sehen, zu Hause mit einem machen? Raspberry Pi Bausatz? In diesem Projekt werden wir lernen Wie man ein selbstgebautes Radar herstellt , Schritt für Schritt DIY.

Beep... Beep... Wie interessant ist das Sonar Ton, den wir in Filmen hören? Wie Sonarsysteme funktionieren, die kilometerweit entfernte Schiffe erkennen, war für uns Ingenieuranwärter schon immer eine Frage der Neugier.

Heute ist es an der Zeit, diese Neugier zu befriedigen. Machen wir ein hausgemachtes Radar Schritt für Schritt.

Wie macht man selbstgemachtes Radar?

Mach dir keine Sorge. Ich erkläre Schritt für Schritt, wie man ein Radar für Anfänger baut. Lass uns anfangen.

Schritt 1: Sehen wir uns den Schaltplan an

In diesem Diagramm können Sie sehen, welche Komponenten wir in unserem Rasberry Pi-Kit Picobricks verwenden werden:

Schritt 2: Ständer für Sonarsensor und Servomotor

Lasst uns einen Stand dafür aufbauen Sonarsensor das wir mit Picobricks und dem Servomotor verbinden, der es dreht. Wenn Sie einen 3D-Drucker haben, lasse ich den Link zur STL-Datei unten. Wenn Sie keinen 3D-Drucker haben, können Sie eine Box wie auf dem Foto herstellen. Sie können den Motor in dieser Box verstecken und Ihren Sensor oben platzieren.


STL-Datei

 

SCHRITT 3: Wie verbinde ich den Sonarsensor mit dem Raspberry Pi?

Zum Anschließen eines Sonarsensors an den Raspberry Pi Sie benötigen 4 Überbrückungskabel.

  1. Verdrahten Sie 1 mit der Pinbelegung TrigGPIO15
  2. Verdrahten Sie 2 mit der Echo GPIO14-Pinbelegung
  3. 3. Draht zu GND-GND-Pinbelegung
  4. Sie müssen das 4. Kabel an die VCC-VBUS-Pinbelegung anschließen.

Wenn Sie über PicoBricks verfügen, stecken Sie einfach das 4-polige Überbrückungskabel aus dem Kit in einen der freien Pins an der Seite des Raspberry Pi Pico.

Schritt 3: Laden Sie den Code in BricksIDE

Ich schreibe den Code unten für Anfänger. Wenn Sie möchten, können Sie diese Codes mit BricksIDE, ThonnyPhyton(MikroPhyton) können Sie Ihren eigenen Code mit blockbasierten Programmieranwendungen schreiben.


von Zeit zu Zeit Schlaf importieren
vom Maschinenimport-Pin
vom Maschinenimport PWM
von Math Import Fabs
Importmaschine
Mathematik importieren
vom Maschinenimport I2C
Von Picobricks importieren Sie SSD1306_I2C
Zeit importieren
Importzeit

pwm_2 = PWM(Pin(22))
pwm_2.freq(50)
def CalculateAngle(Winkel):
   Winkel = Fabs((Winkel * (6000 / 180)) + 2000)
   Winkel = rund(Winkel)
   Rückkehrwinkel

pin_button = machine.Pin(10, machine.Pin.IN)
Mathematik importieren
pot = machine.ADC(26)
i2c = I2C(0, scl=Pin(5), sda=Pin(4), freq=200000)
oled = SSD1306_I2C(128, 64, i2c, addr=0x3c)
Trigger = Pin(15, Pin.OUT)
echo = Pin(14, Pin.IN)

def getDistance():
   trigger.low()
   utime.sleep_us(2)
   trigger.high()
   utime.sleep_us(5)
   trigger.low()
   while echo.value() == 0:
      signaloff = utime.ticks_us()
   while echo.value() == 1:
      signalon = utime.ticks_us()
   timepassed = signalon – signaloff
   Distanz = (verstrichene Zeit * 0,0343) / 2
   print("Der Abstand vom Objekt beträgt ,distance,"cm")
   Rückweg

Summer = PWM(Pin(20))

pin_led = machine.Pin(7, machine.Pin.OUT)

Winkelservo = 0
Servorichtung = 1
pwm_2.duty_u16(CalculateAngle(45))
während True:
    while (pin_button.value()) == (0):
        range2 = Round(round( pot.read_u16() - 0 ) * ( 40 - 5 ) / ( 65535 - 0 ) + 5)
        oled.fill(0)
        oled.text("{}".format("Drücken Sie die Taste"), 0, 5)
        oled.text("{}".format("to start"), 30, 20)
        oled.text("{}".format("The Radar"), 30, 35)
        oled.text("{}".format("Range:"), 15, 50)
        oled.text("{}".format(range2), 60, 50)
        oled.show()

    oled.fill(0)
    oled.text("{}".format("Scannen..."), 15, 40)
    oled.show()
    while (getDistance()) > range2:
        Winkelservo += Servorichtung
        pwm_2.duty_u16(CalculateAngle(angleservo))
        time.sleep((0.008))
        wenn angleservo >= (180):
            Servorichtung = -1
        elif angleservo <= (0):
            Servorichtung = 1

    if (getDistance()) <= range2:
        Abstand = Round(getDistance())
        Buzzer.freq(300)
        Buzzer.duty_u16(100)
        pin_led.on()
        time.sleep((0.5))
        Schlaf(0,25)
        Buzzer.duty_u16(0)
        pin_led.off()
        while (pin_button.value()) == (0):
            oled.fill(0)
            oled.text("{}".format("Objekt erkannt"), 5, 0)
            oled.text("{}".format(distance), 5, 15)
            oled.text("{}".format("cm"), 35, 15)
            oled.text("{}".format(angleservo), 5, 30)
            oled.text("{}".format("Grad"), 35, 30)
            oled.show()

In BricksIDE sollte Ihr Code so aussehen:

Schritt 3: Beginnen Sie mit der Erkundung

So einfach können Sie mit unserem selbstgemachtes Radar herstellen Raspberry Pi-Kit Picobricks.

Jetzt können wir beginnen, wie ein Entdecker zu erkunden.

  1. Wenn Sie die Codes, die ich oben angegeben habe, auf Picobricks hochgeladen haben, können Sie mit dem den gewünschten Abstand einstellen Potentiometer aus dem ersten Menü, das auf dem OLED-Bildschirm erscheint, wenn Sie Picobricks öffnen.
  2. Nachdem Sie den Abstand eingestellt haben, bestätigen Sie Ihre Auswahl mit Taste.
  3. Die Servomotoren beginnen sich zu drehen und erfassen Objekte, die sich über die von Ihnen festgelegte Entfernung bewegen.
  4. Wenn das Radar ein Objekt erkennt, gibt der Summer einen Warnton ab und der Winkel und die Entfernung, in der das Objekt gesehen wurde, werden auf Ihrem Gerät angezeigt OLED-Bildschirm.
    Vorheriger Beitrag
    Nächster Beitrag

    Danke fürs Abonnieren!

    Diese E-Mail wurde registriert!

    Shoppen Sie den Look
    Wählen Sie Optionen

    Bearbeitungsoption

    Benachrichtigung wieder auf Lager

    Vergleichen

    Produkt ArtikelnummerBewertungBeschreibung Sammlung Verfügbarkeit Produktart Andere Details
    this is just a warning
    Anmeldung
    Einkaufswagen
    0 Artikel
    Same Day Shipping No Extra Costs
    Easy Returns Guarantee Return with Ease
    Secure Checkout Secure Payment