SBUS convertor naar PWM zelf maken

Aangestoken door de mogelijkheden van mijn FrSky zender heb ik afgelopen jaar wat geëxperimenteerd met electronica voor zowel de SBUS als ook de S.Port aansluiting.

Omdat ik hier op het forum wat vragen kreeg over mijn S-Bus naar PPM convertor heb ik besloten maar even een draadje aan te maken.

Wat is S-Bus nou eigenlijk?

Het is een Bus systeem. In de elektronica wordt de aanduiding Bus systeem vaak gebruikt voor een verbinding tussen meerdere componenten waardoor data verzonden kan worden tussen de verschillende componenten. Bij S-Bus houdt dit in dat de data van de verschillende kanalen van je zender door de ontvanger worden ontvangen en via een enkele draad uitgestuurd worden. Naast deze enkele data aansluiting heeft de S-Bus aansluiting nog een massa aansluiting en een plus aansluiting. Via de S-Bus kunnen 16 proportionele signalen en 2 schakel signalen verstuurd worden. Dus 16 servo signalen en twee schakel ( aan / uit ) signalen.

Ontvangers met het S-Bus systeem worden geleverd door Futaba en FrSky. Verder zijn er diverse leveranciers van S-Bus geschikte servo's. S-Bus geschikte servo's zijn servo's die dus het S-Bus signaal ontvangen en die dan programmeerbaar zijn om naar één van de kanalen te "luisteren". Dus het signaal van alle kanalen komt binnen bij de servo, maar deze is geprogrammeerd om één enkel kanaal te volgen. Voordeel hiervan is dat dus met een enkele data bus , 3 draden, meerdere servo's aangesloten en aangestuurd kunnen worden. Hebben we bijvoorbeeld een vleugelhelft met daarin een remklep, een flapservo, een landingsgestel en een rolroerservo dan kunnen we deze 4 functies aansturen via drie draden als we gebruik maken van S-Bus servo's. Natuurlijk moeten de draden dan wel voldoende dik zijn om de voeding naar deze 4 servo's te verzorgen.

Daarnaast zie je ook veel Flight Controllers op multicopters waarbij je alle stick info via een enkele verbinding naar de FC kan sturen via S-Bus.

sbus-diagram-lg.jpg



De HUB's die je in het plaatje hierboven zien zijn eigenlijk niks anders dan een aftakking in de S-Bus. Een simpele connector waardoor meerdere servo connectoren tegelijkertijd op de plus, min en data kabel kunnen worden aangesloten. alle plussen zitten aan elkaar doorverbonden, net als de data en min pinnen van de connectoren.

Dus normaal gesproken gebruik je de S-Bus met speciale S-Bus servo's. Om normale servo's aan te sluiten op de S-Bus heb je een speciale S-bus convertor nodig. Zo'n convertor ontvangt het S-Bus signaal en zet dit om naar een PWM signaal voor een standaard servo. Ook hier moet je dus de convertor programmeren om het juiste kanaal te converteren

171930_SBD1_Adapter_60cm_Futaba_F1850060121063_900.jpg

Met de hierboven getoonde S-Bus convertor kan je drie kanalen op de S-Bus omzetten naar drie PWM signalen voor servo's.
 
Goed tot zover de uitleg van S-Bus

Nu de beschrijving over wat ik zelf heb gemaakt.

Een S-Bus naar PWM convertor voor 16 kanalen.

Na wat zoeken over S-Bus vond ik op het RC forum een beschrijving van een zelfgebouwde convertor met behulp van een Arduino. Een Arduino is een experimenteer bordje met een ATMEL processor en wordt veel gebruikt door elektronica hobbyisten. Deze Arduino's zijn intussen in vele types en formaten te koop. Vaak kan je deze via Ebay voor weinig geld aanschaffen en deze Arduino's bieden voor de modelbouwer oneindig veel mogelijkheden.

Ik heb voor de S-Bus naar PWM convertor een Arduino pro mini gebruikt. Deze is 18 x 33 MM dus mooi compact.
setUpProMini_breakaway.jpg


Je zou ook de Arduino Nano kunnen gebruiken. Het voordeel van de Nano is dat deze een USB aansluiting heeft en zonder verdere componenten geprogrammeerd kan worden.
ArduinoNanoFront_3_sm.jpg

Als je deze programmeerd met de code van mstrens uit het volgende draadje op openrc forum dan heb je een werkende S-Bus naar PWM convertor.
by mstrens » Mon Feb 09, 2015 10:38 am

HEt enige wat je nog moet doen om de Arduino aan te kunnen sluiten is het maken van het volgende schakelingetje om het signaal van de S-bus met de arduino te kunnen lezen.

inverter_sbus.jpg


Dit is nodig omdat het S-Bus signaal bijna gelijk is als het standaard communicatie signaal van de Arduino alleen de waarden voor wat een 1 en een 0 is in de digitale communicatie zijn omgedraaid. Door deze schakeling met de transistor wordt het signaal weer omgekeerd en kan dus makkelijker door de Arduino worden uitgelezen.

Nu kan je dit aansluiten op de ontvanger en je hebt de PWM signalen voor de servo's beschikbaar op de poorten van de Arduino. De massa en de voeding voor de servo's kan je direkt aansluiten op de 5v en de ground van de Arduino

Je kan desgewenst meerdere van deze S-Bus convertoren aansluiten op een enkele ontvanger. Het is dan handiger om de bovengenoemde signaal omvormer direkt na je ontvanger te monteren waarna je deze bij de arduino kan weglaten.


Totale kosten van zo'n S-Bus convertor rond de 17,50 Euro, maar dan heb je dus wel alle 16 kanalen ter beschikking en kan je dus ook max 16 servo's aansturen. Kan eventueel zelfs uitgebreid worden met een speciale uitgang voor het aansturen van een gloeiplug zodat je eigenljik een ingebouwde Glow Four hebt.
 
Laatst bewerkt:
Met een Arduino kun je trouwens ook voor weinig een goedwerkende vario maken. Geschikt voor S.Port, Mutiplex telemetrie, Hott en Jeti

benodigdheden. Een servo kabeltje, een Arduino en een druksensor MS5611. Totale kosten voor het zelf maken ongeveer 15 euro. KAn ook nog verder uitgebreid worden met meting van de lipo cel spanning en stroom, en een snelheidsmeter voor airspeed.

Kijk maar eens op Openxsensor
 
Back
Top