Sterowanie 900 serwami modelarskimi

Loading thread data ...

Attiny10 ;)

Mirek.

Reply to
Mirek
Reply to
Krzysztof Tabaczyński
Reply to
Robert Wańkowski

A dlaczego chcesz robić na piechotę, a nie mikrokontrolerem? Nie jestem aptudejt z serwami. Są one bistabilne, czy wracają do pozycji zerowej, jak nie ma impulsów? W pierwszym przypadku możesz normalnie multiplexować, w drugim lepiej dać prosty mikrokontroller dla grupy serw. Program będzie prosty, przy 50Hz masz kupę czasu, by zrobić pełny PWM na każdej nóżce oddzielnie. Każdy procesor będzie mógł obsłużyć jakieś 24-32 serwa, a nawet więcej, jak dasz jakiegoś większego wypaśca. Ale bym nie przesadzał z komplikacją. Jak dasz 64 procki, każdy steruje 16 serwami, i już masz 1024 wyjścia. Wsie procki łączysz daisy-chain ze sobą lub robisz kilka grup (4 lub 8), które są sterowane przez zgwałcone RS232. Sądzę, że wiaderko MSP430F4270 wystarczyłoby w zupełności.

Waldek

Reply to
Waldemar Krzok

Kosztem wolniejszego i wierszowego odświeżania można by zastosować tylko

30 serw, każde do sterowania prętem kręcącym całym wierszem, natomiast kolejne 30 serw lub elektromagnesów do wybierania kolumny: dociska całą kolumnę do prętów sterująćych lub odłącza i blokuje w ustalonej pozycji.

Mirek.

Reply to
Mirek
Reply to
Robert Wańkowski

to zależy od serwa. Ja bym robił to tak, by serw nie trzeba było przerabiać albo jakiegoś międzymordzia dodawać. Dlatego bym je pogrupował i każdej grupie przydzielił procek.

Waldek

Reply to
Waldemar Krzok

procek z oprogramowaniem i kondensator 100nF. Pracować mogą na wewnętrznym generatorze. Ewentualnie potrzebujesz jeszcze rezonator ceramiczny + 2 kondziory, jak masz procka bez generatora. Ewentualnie jeden centralny generator dla wszystkich, ale tego bym nie robił ze względu na dynamiczne obciążenie zasilania. Lepiej, by pracowały asynchronicznie. Połączenie między prockami leciałoby na zmodyfikowanym RS232. Konkretnie idziesz z procesora sterującego całym majdanem do sterownika pierwszych n serw do RX, TX dajesz do wejścia następnego itd. W protokole masz na pierwszym bajcie adres procesora, w bajtach 2 do n+1 masz wartości serw, w bajcie n+2 sumę kontrolną. Każdy procek sprawdza, czy dla niego i sobie bierze jak potrzebuje, jak nie, to robi echo na TX. Można to zrobić jeszcze lepiej, dając np. MSB zawsze zero dla rozkazu, procek zaadresowany zmienia na 1 i posyła dalej (oczywiście sumę kontrolną też zmienia) i na końcu masz echo z potwierdzeniem, czy przeszło przez cały ciąg i czy procek zareagował odpowiednio. Ale to wszystko to oprogramowanie. Cena hardware byłaby cena procka * liczba serw/n, gdzie n liczba serw na procesor. Dałbym n=16 góra n=32, masz wtedy bardziej modularny system. 100 kondensatorów 100nF kosztuje

2-3zł. PWM możesz zadrutować dość prosto, bo obsługujesz wszystkie serwa bez różnicy, więc masz właściwie pętlę z n razy if w środku i licznik. Tylko obsługa protokołu RSa wymaga przemyślenia.

Waldek

Reply to
Waldemar Krzok
Reply to
Robert Wańkowski

A 900 serw cie nie przeraza, jesli chodzi o koszty ?

w miare przecietny AVR obsluzy kilkadziesiat serw - tu bardziej chodzi o ilosc osiagalnych portow. Z prostym scalakiem TTL/CMOS wystarczylby nawet jakis maly pinowo procek.

Ewentualnie wepchnac to w FPGA.

Tak czy inaczej - niezbyt drogo na piksel.

J.

Reply to
J.F.
Reply to
Robert Wańkowski

Jeżeli masz kogoś bogatego, napalonego na _taki_ wyświetlacz to oczywiście działaj - nie powinno być problemów. Zasugeruję tylko, że znacznie ciekawiej jest zrobić coś nowego niż kopiować czyjś pomysł.

Mirek.

Reply to
Mirek
Reply to
Robert Wańkowski

Najtańsze serwa, jakie się do takiego projektu nadają, kosztują ca. $2.50 sztuka. Przy 900 serwach to to jest $2450. Niech będzie, że przy

900 serwach Chińczycy dadzą Ci 50% rabatu, to będzie $1200. do tego 60 procków po $2 sztuka to i tak drobiazg...
Reply to
Marek Lewandowski
Reply to
Robert Wańkowski
Reply to
Robert Wańkowski

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.