Hinterer Sensor funktioniert, vorderer nicht

#define PsHiEc A5
#define PsHiTr A4
#define PsHiBe 3
#define PsHiWE 4
#define PsHiME 5
#define PsHiKE 6
#define PsVoEc A3
#define PsVoTr 1
#define PsVoBe 2
#define PsVoWE 9
#define PsVoME 8
#define PsVoKE 7
#define MoRuEr A2
#define MoVoEr A1
#define BliHeb A0
#define LeBlLi 10
#define LeBlRe 11
#define LeLeHi 12
#define LeLeVo 13
#define BeepHi 100
#define BeepVo 101

#define beep_startHi 20
#define min_distanceHi  5
#define beep_startVo 20
#define min_distanceVo  5
#define cHi 0.0343
#define cVo 0.0343

long tempoVo;
long tempoHi;
float spaceVo;
float spaceHi;
int potiPin = A0;
int BliHebVal = 0;

bool blinkModus = false;

void setup() {
  pinMode(PsHiEc,INPUT);
  pinMode(PsHiTr,OUTPUT);
  pinMode(PsHiBe,OUTPUT);
  pinMode(PsHiWE,OUTPUT);
  pinMode(PsHiME,OUTPUT);
  pinMode(PsHiKE,OUTPUT);
  pinMode(PsVoEc,INPUT);
  pinMode(PsVoTr,OUTPUT);
  pinMode(PsVoBe,OUTPUT);
  pinMode(PsVoWE,OUTPUT);
  pinMode(PsVoME,OUTPUT);
  pinMode(PsVoKE,OUTPUT);
  pinMode(MoRuEr,INPUT);
  pinMode(MoVoEr,INPUT);
  pinMode(BliHeb,INPUT);
  pinMode(LeBlLi,OUTPUT);
  pinMode(LeBlRe,OUTPUT);
  pinMode(LeLeVo,OUTPUT);
  pinMode(LeLeHi,OUTPUT);
  
  Serial.begin(9600);
}

void loop() {
  blinkerSteuerung();
  parkSensorik();
  BliHebVal = analogRead(potiPin);
  Serial.println(BliHebVal);
}
void blinkerSteuerung() {
  if (BliHebVal < 400) {
    blinkModus = true;
    digitalWrite(LeBlLi, HIGH);
    delay(1000);
    digitalWrite(LeBlLi, LOW);
  }
  else if (BliHebVal > 600) {
    blinkModus = true;
    digitalWrite(LeBlRe, HIGH);
    delay(1000);
    digitalWrite(LeBlRe, LOW);
  }
  else {
    blinkModus = false;
    digitalWrite(LeBlLi, LOW);
    digitalWrite(LeBlRe, LOW);
  }
}
void parkSensorik() {
  if (blinkModus) {
    digitalWrite(PsHiTr, LOW);
    digitalWrite(PsVoTr, LOW);
    delayMicroseconds(5);
    
    digitalWrite(PsHiTr, HIGH);
    digitalWrite(PsVoTr, HIGH);
    delayMicroseconds(10);
    digitalWrite(PsHiTr, LOW);
    digitalWrite(PsVoTr, LOW);
    
    tempoHi = pulseIn(PsHiEc, HIGH) / 2;
    tempoVo = pulseIn(PsVoEc, HIGH) / 2;
    
    spaceHi = tempoHi * cHi;
    spaceVo = tempoVo * cVo;
    
    Serial.println("Distanz Vorne =" + String(spaceVo, 1) + " cm");
    Serial.println("Distanz Hinten =" + String(spaceHi, 1) + " cm");
    
    if (spaceHi < BeepHi) {
      noTone(PsHiBe);
      delay(spaceHi * 4);
      delay(50);
    }
    if (spaceVo < BeepVo) {
      noTone(PsVoBe);
      delay(spaceVo * 4);
      delay(50);
    }
  }
}

Hallo nochmal. Ich habe kräftig gecodet und versucht, alles so gut zu verstehen wie es geht und ich habe auch schon viele Fehler behoben aber nun stehe ich vor einem Problem. Der Parksensor Hinten "PsHi--" funktioniert. Der vordere "PsVo--" aber nicht. In TinkerCAD wird mir im Serial Monitor immer 0 cm angezeigt... Und außer dem höre ich in der Simulation keines der beiden Piezo-Elemente ("PsVoBe" z.B.). Der nahezu identische Code nur mit anderen Distanzwerten funktioniert mit einem einzelen Sensor/Piezo in der Simulation auch ohne Probleme...

Beschreibe mal was ist was.
Ohne Kommentare wird nix

Eventuell belegt durch die serielle Schnittstelle?
Leider steht nicht dabei welchen Arduino du nutzt.

Ich nutze de Uno R3, online stand, dass man den TX Pin nutzen kann, aber den RX nicht.

Das ist eine blockierende Funktion. Die kannst du nicht 2 mal "parallel" ausführen.

Dieser Block muß umsortiert werden

Willst Du jetzt mit jedem 10Zeiler häppchenweise einen neuen Thread aufmachen?

Kann ja auch nicht.

uint32_t checkUltraschall(const byte triggerPin, const byte echoPin)
{
  digitalWrite(triggerPin, LOW);
  delayMicroseconds(5);
  digitalWrite(triggerPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin, LOW);
  uint32_t dist = pulseIn(echoPin, HIGH) / 2;
  return dist;
}

void parkSensorik()
{
  if (blinkModus)
  {
    spaceVo = checkUltraschall(PsVoTr, PsVoEc) * cVo;
    spaceHi = checkUltraschall(PsHiTr, PsHiEc) * cHi;
    Serial.println("Distanz Vorne =" + String(spaceVo, 1) + " cm");
    Serial.println("Distanz Hinten =" + String(spaceHi, 1) + " cm");
    /*
        if (spaceHi < BeepHi)
        {
          noTone(PsHiBe);
          delay(spaceHi * 4);
          delay(50);
        }

        if (spaceVo < BeepVo)
        {
          noTone(PsVoBe);
          delay(spaceVo * 4);
          delay(50);
        }
    */
  }
}
void parkSensorik() {
  if (blinkModus) {
    digitalWrite(PsTrig, LOW);
    delayMicroseconds(5);
    digitalWrite(PsTrig, HIGH);
    delayMicroseconds(10);
    digitalWrite(PsTrig, LOW);
    
    tempoHi = pulseIn(PsHiEc, HIGH) / 2;
    tempoVo = pulseIn(PsVoEc, HIGH) / 2;
    
    spaceHi = tempoHi * cHi;
    spaceVo = tempoVo * cVo;
    

Habe jetzt einfach auch hardwaremäßig über einen Ausgang beide Trigger angesteuert, so fällt etwas von dem Parallelen weg, geht das in die angedachte Richtung?

Nein, so:

digitalWrite(PsHiTr, LOW);
delayMicroseconds(5);
digitalWrite(PsHiTr, HIGH);
delayMicroseconds(10);
digitalWrite(PsHiTr, LOW);
tempoHi = pulseIn(PsHiEc, HIGH) / 2;

digitalWrite(PsVoTr, LOW);
delayMicroseconds(5);
digitalWrite(PsVoTr, HIGH);
delayMicroseconds(10);
digitalWrite(PsVoTr, LOW);
tempoVo = pulseIn(PsVoEc, HIGH) / 2;

Oder mit einer Funktion wie von @my_xy_projekt in Post 6 gezeigt