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.
- Verdrahten Sie 1 mit der Pinbelegung TrigGPIO15
- Verdrahten Sie 2 mit der Echo GPIO14-Pinbelegung
- 3. Draht zu GND-GND-Pinbelegung
- 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.
- 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.
- Nachdem Sie den Abstand eingestellt haben, bestätigen Sie Ihre Auswahl mit Taste.
- Die Servomotoren beginnen sich zu drehen und erfassen Objekte, die sich über die von Ihnen festgelegte Entfernung bewegen.
- 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.