Servo-Treiber

  • 1
  • 2
  • Page 1 of 2
Harry
Moderator
Avatar
Gender:
Location: zwischen Augsburg und Ulm
Age: 59
Posts: 2080
Registered: 03 / 2003
Subject:

Servo-Treiber

 · 
Posted: 15.12.2019 - 15:06  ·  #1
Hallo @ all,

falls schon mal einer von euch darüber gestolpert ist: ein Servo-(PWM-)Treiber via I²C/TWI.
Verwendet wird der Baustein PCA9685 mit 16 Ausgängen und 12-Bit Auflösung. Da dieser IC 6(!) Address-Pins hat, kann man damit also theoretisch (2^6)*16=1024 Servos ansteuern.
Der PCA9685 erzeugt die PWM-Frequenz vollkommen selbständig und der µC muß nur die Werte übergeben. Natürlich kann man damit auch LEDs ansteuern und hat dann die gesamte PWM-Auflösung von 12-Bit zur Verfügung.

Passende Boards gibt's bei div. Online-Aktionshäusern/-Händlern ab ca. 4€.

Die Auflösung für ein Servo mit 50Hz (=20ms Periodendauer) im Bereich 1-2ms On-Zeit liegt bei 205. D.h. 205=1ms=Servo-Null und 410=2ms=Servo-Maximum. Viele Servos arbeiten allerdings mit einem erweiterten Bereich von z.B. 0.5-2.5ms On-Zeit und damit mit einem höheren Werte-Bereich. Man könnte auch die Frequenz auf z.B. 60Hz erhöhen (wenn das Servo mitspielt) und auch dann wäre der Werte-Bereich höher.

Gruss
Harry

PS: Kein vollständiges Programm, nur das was man dazu benötigt ;)
PS, die 2.: Falls einer von euch eine Quelle für den IC alleine hat, wäre ich an ein paar davon interessiert :).

[Edit]Oben war ein Fehler drin ;)
You must be logged in or your permissions are to low to see this Attachment(s).
Harry
Moderator
Avatar
Gender:
Location: zwischen Augsburg und Ulm
Age: 59
Posts: 2080
Registered: 03 / 2003
Subject:

Re: Servo-Treiber

 · 
Posted: 16.12.2019 - 09:38  ·  #2
Hab noch 3 Bilder:
- PWM_Lo.jpg: Impulszeit 0.5ms
- PWM_Hi.jpg: Impulszeit 2.5ms

..... und ein neues Display, basierend auf 8 Stück MAX7219 und 8 Stück 8x8 LED-Punktmatrixmodule (20.2mm hoch) und als grafisches Display in AVRCo eingebunden. Den GraphIOS konnte ich leider nicht verwenden (ist wirklich komplett leer) und mußte ein eigenes Display-Refresh dafür schreiben. Die Platine stammt nicht von mir ;).

Ich teste den Servo-Controller mit Servos vom Typ MG996R. Drehbereich ca. 190°, PWM-Bereich für Vollausschlag links-rechts 103-470 bei 50Hz.

..... das verwendete Oszi hat seinen Namen nicht verdient :D .... so groß, wie ein kleines Smartphone, nicht besonders genau, aber hervorragend geeignet um im Wohnzimmer (da programmiere ich zu 99.9%) mal schnell eine Kurve aufzuzeichnen. Nennt sich DSO Nano (erste Generation).
You must be logged in or your permissions are to low to see this Attachment(s).
tbegle
Benutzer
Avatar
Gender: n/a
Age: 64
Posts: 150
Registered: 01 / 2018
Subject:

PCA8596.............

 · 
Posted: 04.01.2020 - 16:24  ·  #3
Hallo Harry,
ich weiss nicht ob das mit deinem PCA noch aktuell ist, ich arbeite nur mehr mit diesem IC - wenn man mit LED-Bel. arbeitet ist alles Andere murx! Treppen! < 10bit und Freq. < 1KHz! - (14bit ~1700Hz ist ok!! für Augen! und Wohlbefinden!)
Ich bestelle seit etwa 2,57J alles(ausschliesslich!) bei Alibaba(ALIexpress) um dir die Unterschiede zu den hier verlangten Preisen zu verdeutlichen
habe ich dir einige jpg in dein Postfach gelegt. Im Übrigen das Uhren IC(hochgenau) und der DC/DC Wandler(super stabil 170ua!!) sind der Brüller
Ich habe alle meine Linearregler entsorgt! (grober Unfug diese einzusetzen produz. nur Wärme und Beschaltung eine Bastelei)
Interessant ist auch das 328p mini Modul komplett bestückt(und getestet!) für ~2€ mein Standart Modul läuft in 327 Geräten ohne jegl. Problem!


Gruss
Toni

Ich benötigte HM-Bohrer - hier bekomme ich nicht einmal 1! (Fantasie Preise) - Qualität(super) vor 2J schon mal 1kg gekauft
You must be logged in or your permissions are to low to see this Attachment(s).
Harry
Moderator
Avatar
Gender:
Location: zwischen Augsburg und Ulm
Age: 59
Posts: 2080
Registered: 03 / 2003
Subject:

Re: Servo-Treiber

 · 
Posted: 04.01.2020 - 17:24  ·  #4
Hallo Toni,

beim Treiber oben ging es darum, daß der PCA9685 das PWM-Signal für Servos selber erzeugt und somit der µC nicht belastet wird.

Gruss
Harry
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: Servo-Treiber

 · 
Posted: 04.01.2020 - 20:55  ·  #5
Quote by tbegle

...
Ich bestelle seit etwa 2,57J alles(ausschliesslich!) bei Alibaba(ALIexpress) um dir die Unterschiede zu den hier verlangten Preisen zu verdeutlichen
habe ich dir einige jpg in dein Postfach gelegt. Im Übrigen das Uhren IC(hochgenau) und der DC/DC Wandler(super stabil 170ua!!) sind der Brüller
Ich hab alle meine Linearregler entsorgt! (grober Unfug diese einzusetzen produz. nur Wärme und Beschaltuang eine Bastelei)


Hallo Toni,

für ein Heim- und Hobby-Projekt mag das ja alles ok sein.

Ich selbst nutze seit mehr als 10 Jahren nur noch Schaltregler wegen der geringen Verluste, aber der Aufbau und Filter für ein EMV gerechtes System ist um ein vielfaches höher als bei einem Linearregler.
Aber auch für Linearregler gibt es oft sehr gute Gründe z.B. "EMV". Du bekommst mit einem Linearregler so gut wie keine Probleme mit Schaltstörungen auf dem System. Und man kann diese extrem klein aufbauen und befiltern.

Ich würde für meine Projekte NIE irgendwelchen zusammengebauten Bastelteile aus Alibaba kaufen und einsetzen. Was ist wenn der Lieferant diese fertigen Module nicht mehr herstellt, ändert usw.?

In meinen Projekten ist die Beständigkeit und Lieferverfügbarkeit wichtig. Angenommen du schaffst es mit einem dieser Regler die EMV-Prüfung zu bestehen und jetzt ändert der Hersteller dieses Modul.
Dann ist Deine EMV-Prüfung ungültig und Du fängst von vorne an.

Wenn Du allerdings Dein Design so aufbaust, dass die einzelnen Bauteile von verschiedenen Herstellern lieferbar sind, kannst Du einfach bei Lieferproblemen diese einzeln ändern und Deine EMV-Prüfung ist weiterhin gültig.

Thorsten
tbegle
Benutzer
Avatar
Gender: n/a
Age: 64
Posts: 150
Registered: 01 / 2018
Subject:

Re: Servo-Treiber

 · 
Posted: 26.01.2020 - 11:48  ·  #6
Hi Thorsten,

klar, wenn du prinzipiell Alibaba als Lieferant ablehnst ist es ok.
Bedenke aber, fast alles was du an hast oder kaufst stammt (auch indirekt) aus China

Wir haben in den USA für HASBRO 3J Spielzeuge erfunden!
Die Entwicklung war bei HASBRO die Fertigung (natürlich) in China, also keine USA Ware
Im Übrigen der Schaltregler hat ausgezeichnete Parameter (mit Scope getestet)
Vom Nano Board habe ich mir vorsichtshalber 1kg gekauft :xmas:

Gruss
Toni
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: Servo-Treiber

 · 
Posted: 26.01.2020 - 16:30  ·  #7
Hallo Toni,

wenn das doch nur so einfach wäre "..mit Scope getestet.."

Ohne Prüfkammer und Messgeräte für einige Tausend EUR misst Du alles nur nicht mal ansatzweise die Probleme die mit einem Schaltregler aufkommen.

Gestrahlte Störungen kannst Du ohne passende Kammer, Antennen und Messgeräte vergessen, Leitungsgebundene Störungen bekommst Du nur mit passenden Analyser hin. Ein Scope reicht da nur für die unteren Zonen. Aber die Probleme fangen leider Jenseits der normalen Scopes an ;-)

In den Grafiken siehst Du die typischen Probleme eines Schaltreglers und bei diesen Messungen war das Layout schon sehr gut angepasst und die Filterung ebenfalls. Deswegen hatte nicht mehr viel gefehlt. Da ich einen zusätzlichen Filter vorgesehen habe und diesen dann beim EMV-Labor bestückt habe, konnten wir den Test positiv beenden.

Und ich habe die Schaltfrequenz extra niedrig bei rund 340khz eingestellt, höher hätte ich noch mehr probleme bekommen.

Thorsten
You must be logged in or your permissions are to low to see this Attachment(s).
Gunter
Administrator
Avatar
Gender:
Location: Frankfurt Main / Germany
Posts: 1697
Registered: 02 / 2003
Subject:

Re: Servo-Treiber

 · 
Posted: 26.01.2020 - 17:23  ·  #8
super Thorsten !
Das erklärt, warum LEDs mit "Vorschalt Hardware" im Auto den CAN-Bus so empfindlich stören können. Plötzlich spinnt das Radio oder sonstwas.
Gunter
  • 1
  • 2
  • Page 1 of 2
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   138   152 · Page-Gen-Time: 0.030468s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI