(DIY) te lage druk beveiliging voor pneumatische landingsgestellen.

Discussie in 'Model elektronica' gestart door Vale Ouwe, 16 feb 2020.

  1. Vale Ouwe

    Vale Ouwe Vriend van modelbouwforum.nl Forum veteraan

    Lid geworden:
    5 feb 2004
    Berichten:
    6.317
    Locatie:
    Hell
    Doet min of meer hetzelfde als de Pressuregard van Robart.
    https://robart.com/collections/air-...sories/products/robart-retract-pressure-guard
    Alleen is die al een tijdje niet verkrijgbaar.

    Zelfbouwen is echter heel eenvoudig.

    Het belangrijkste onderdeel is de druksensor en ik heb gekozen voor een analoge sensor van Honeywell.
    Deze werkt; van 0 tot 10 Bar, op 5V en geeft een analoge spanning als uitkomst.
    Achter op de sensor twee condensatoren plaatsen (zie de datasheet).
    Het is handig om de sensor in de buurt van de luchttank(s) te plaatsen.
    Edit: link naar sensor toegevoegd https://www.reichelt.nl/druksensor-...-abpllnt010-p247626.html?&trstct=pos_11&nbc=1

    De verwerking wordt gedaan op een Arduino Nano bordje (zo'n beetje overal te koop).
    Aan verdere onderdelen heb je een paar connectoren voor servo-stekkers nodig (direct solderen kan ook), een 5V piezo-buzzer ( https://www.reichelt.nl/zoemer-elek...d-430-00008-p254027.html?&trstct=pos_15&nbc=1 ) en eventueel een jumper.
    De jumper overbrugd de spanningsregelaar van het arduino bordje (tussen V-in en 5V) en deze wordt alleen gebruikt als de voedingsspanning zelf al 5V is.
    werkt je ontvanger met een hogere spanning dan de jumper verwijderen zodat de spanningsregelaar van de Arduino voor 5V zorgt.

    Behalve de druksensor gaat er servo kabeltje naar de ontvanger (kanaal naar keuze) en een kabeltje naar de servo welke het ventiel aanstuurd.

    Hier onder een geprint kastje waar de connectoren te zien zijn, de buzzer, een condensator (100nF tussen 5V & Gnd) en linksonder de jumper voor rechtstreeks op 5V (jumper gebruiken) of 7 tot 12 V (jumper verwijderen.
    Rechtsonder zit de druksensor bij de tyraps.

    Druksensor aangepast.jpg

    Wat het doet;
    Gewoon het signaal van de ontvanger doorgeven of je het landingsgestel wilt intrekken of juist neerlaten, totdat de druk te laag wordt.
    Komt de druk beneden een ingestelde waarde (hier ca 2,6 Bar) dan zal het landingsgestel direct naar beneden gaan.
    Verder onthoud hij de laatste stand van het landingsgestel.
    Als (bij het aanzetten) blijkt dat de laatste stand niet overeenkomt met wat de zender opgeeft, dan laat de buzzer zich horen en gebeurd er niets voordat de (schakelaar ? op) zender overeenkomt.

    Hieronder staat de Sketch (code).
    Je zult waarschijnlijk twee waarden moeten aanpassen in de code. Die voor Gearup & Geardown. [ int ServoGearup = (bv)1080 & int ServoGeardown = (bv)1750;]
    Die kun je heel makkelijk bepalen door vooraf met een servo-tester even te kijken wat deze waarden zijn.

    Code:
    #include <Servo.h>
    #include <EEPROM.h>
    
    int ServoinPin = 5;
    int ServogearPin = 7;
    int Buzzpin = 13;
    int Buzz;
    
    
    int Pressure;
    int Pressurelimit =  350; // = ca 2,8 Bar (0 Bar = 0 & 10 Bar = 1024)
    
    int servoinput;
    Servo servogear;
    
    int ServoGeardown = 1750; // value for geardown in ms (check this value for your plane)
    int ServoGearup = 1080; // value for gearup in ms (check this value for your plane)
    
    int Readystatus; // 0= not ready (no match between TX-signal and gear up or down)/ 1 = ready (match)
    int Gearstatus; //0 = gear up / 255 = geardown
    
    
    void setup()
    {
    
      pinMode(ServoinPin, INPUT);
      pinMode(ServogearPin, OUTPUT);
      pinMode(Buzzpin, OUTPUT);
      Buzz = LOW;
      Readystatus = 0; // 0 = previus not ready.
    
      delay(3000); // 3 seconds delay (rx to get ready)
     
    }
    
    void loop()
    {
      Pressure = analogRead (A0);
      servoinput = pulseIn(ServoinPin, HIGH);
      Gearstatus = EEPROM.read(0);
    
      if (servoinput <= 1250 && Gearstatus == 255) // if the switch on transmitter is in the same (down)position as the gear
      {
        Readystatus = 1;  // Gear = in the same position as switch on TX
      }
      if (servoinput >= 1750 && Gearstatus == 0)  // if the switch on transmitter is in the same (up)position as the gear
      {
        Readystatus = 1;  // Gear = in the same position as switch on TX
      }
    
      if (Readystatus == 1)
      {
        servogear.attach(ServogearPin);
        if (Pressure >= Pressurelimit) // Pressure is above minimum - all OK
        {
          if (servoinput <= 1250)
          {
            servogear.writeMicroseconds(ServoGeardown);
            if (Gearstatus == 0) // If the gear was up
            {
              Gearstatus = 255; // change status to gear down
              EEPROM.write (0,Gearstatus);  // New status in Eeprom
            }
            Gearstatus = 255;
          }
     
          if (servoinput >= 1750)
          {
            servogear.writeMicroseconds(ServoGearup);
            if (Gearstatus == 255)
            {
              Gearstatus = 0;
              EEPROM.write (0,Gearstatus);
            }
            Gearstatus = 0;
          }
        }
        if (Pressure < Pressurelimit)
        {
          servogear.writeMicroseconds(ServoGeardown);
          Gearstatus = 255;
          EEPROM.write (0,Gearstatus);
        }
      }
      if (Readystatus == 0)
      {
        if (Buzz == LOW)
        {
          Buzz = HIGH;
          digitalWrite (Buzzpin, Buzz);
          delay(100);
        }
        if (Buzz == HIGH)
        {
          Buzz = LOW;
          digitalWrite (Buzzpin, Buzz);
          delay(100);
        }
      }
    }
    
     
    Laatst bewerkt: 16 feb 2020
  2. toostbeek

    toostbeek

    Lid geworden:
    6 dec 2014
    Berichten:
    1.403
    Waar heb je die honeywell druksensor vandaan gehaald en wat zijn de kosten can zo'n sensor. Ik ben op zoek naar een soortgelijke sensor, maar die ik kan vinden zijn allemaal erg duur of heel zwaar.

    Verstuurd vanaf mijn SM-G965F met Tapatalk
     
  3. Vale Ouwe

    Vale Ouwe Vriend van modelbouwforum.nl Forum veteraan

    Lid geworden:
    5 feb 2004
    Berichten:
    6.317
    Locatie:
    Hell
  4. toostbeek

    toostbeek

    Lid geworden:
    6 dec 2014
    Berichten:
    1.403
    Ik zie nu pas dat je Frsky gebruikt.
    Dan kan je toch nog veel eenvoudiger de gemetrn druk via telemetrie naar je zender laten sturen ipv met een buzzertje in je toestel?

    Verstuurd vanaf mijn SM-G965F met Tapatalk
     
  5. Tadango

    Tadango Forum veteraan

    Lid geworden:
    25 jun 2003
    Berichten:
    16.361
    Locatie:
    Groningen
    Ik zou ook echt niet weten waarom je het anders zou doen. Je hebt zo logging van de druk, alarm op je zender en automatisch gear down bij de druk die je wilt, instelbaar vanaf de zender.

    Btw, bedankt voor de sensor :) Deze zocht ik nog.... eens kijken hoe we hier een fatsoenlijke koppeling op krijgen.
     
  6. hmeijdam

    hmeijdam

    Lid geworden:
    29 jan 2010
    Berichten:
    1.884
    Locatie:
    Barneveld
    Leuke toepassing Erwin. Ik zag ook deze sensor nog bij Reichelt. Die gaat tot 6,5 bar en heeft al een 3mm pijpje, waarop een slangetje kan worden aangesloten. Het uitlezen van deze sensor daarentegen vond ik wel een ingewikkeld verhaal.
     
  7. Vale Ouwe

    Vale Ouwe Vriend van modelbouwforum.nl Forum veteraan

    Lid geworden:
    5 feb 2004
    Berichten:
    6.317
    Locatie:
    Hell
    Dat kan, maar het maakt voor de techniek weinig uit.
    Dit is universeel toepasbaar.

    [Edit]
    Het buzzertje in het toestel is alleen maar om je te waarschuwen dat de schakelaar op de zender "verkeerd" staat.
    Er zit al een "beveiliging" op dat er in dat geval niets gebeurd.
    Het zou een beetje knullig zijn als je toestel mooi op z'n pootjes staat, maar deze intrek omdat de schakelaar op je zender verkeerd staat.
    [/Edit]

    Een stukje festool slang ging prima over de Robart nippel en een stukje tygon brandstof slang houdt verbazingwekkend goed op Festool.
    Maar er is vast iets mooiers op te verzinnen (verloop nippel?)

    De druk waarmee ik begin is 7,5 bar en dan kan ik zo'n 4x intrekken en uitvouwen.
    Er zitten in het systeem 3 grotere cilinders en één kleinere voor het bedienen van het landingsgestel en 3 kleinere voor de deuren.
     
    Laatst bewerkt: 17 feb 2020
  8. toostbeek

    toostbeek

    Lid geworden:
    6 dec 2014
    Berichten:
    1.403
    Intussen heb ik met behulp van deze sensor en de arduino code van Tadango een FrSky telemetrie druksensor gemaakt.

    Werkt perfect.
    Even een opmerking t.a.v. de hierboven geplaatse code.

    Hierin wordt aangegeven:
    int Pressurelimit = 350; // = ca 2,8 Bar (0 Bar = 0 & 10 Bar = 1024)

    Dit is niet helemaal correct. Het meetbereik van de sensor is van 0 - 10 bar, maar de daarbij behorende spanningsvariatie loopt vam 0,5 - 4,5 volt. Dus 0 Bar is 102 en 10 Bar is 921.
     

Deel Deze Pagina