logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Atmega644 - Nagrywanie ruchu i sterowanie silnikami krokowymi.

cesc22 25 Lip 2015 12:15 852 2
REKLAMA
  • #1 14873830
    cesc22
    Poziom 8  
    Witam,
    Wykonuje projekt, którego zadaniem jest sterowanie czterema silnikami korkowymi(skokowymi, jak kto woli) na podstawie nagranego wcześniej ruchu.
    Niestety nie mam zdjęć modelu. Ale jest to platforma imitująca ruch stawów biodrowych oraz kolanowych, więc wymagana jest precyzja co najmniej na poziomie 1 stopnia.
    Do silników na na wale przymocowane są potencjometry. W pierwszej fazie działania wykonywany jest ruch, uC za pomocą ADC zczytuje wartości napięcia potencjometrów i zapisuje je.
    Po nagraniu ruchu. W uC dane zostają skorygowane, a następnie zadawany jest ruch silników. Wykonują one kroki dopóki nie osiągną kolejnych wymaganych wartości napięcia (wartość napięcia na wale jest cały czas odczytywana i porównywana).
    Dotychczas zajmowałem się tylko programowaniem. To mój pierwsze schemat elektryczny. Moglibyście wspomóc opinią, radą? Czy w dobrą stronę idę? Czy taki układ ma w ogóle sens?
    Z góry dzięki za pomoc i pozdrawiam.
  • REKLAMA
  • #2 14874011
    dondu
    Moderator na urlopie...
    Witamy na forum :)

    1.
    Co skłoniło Ciebie do zastosowania MCP1525?
    Jakich parametrów oczekujesz od pomiarów potencjometrów i jakiego potencjometry są typu?
    ... tym bardziej, że musisz dodawać rezystory do potencjometrów, by tworzyć dzielnik 2,5V i dostosować się do MCP1525.

    2. Sporo będzie projekt kosztował, skoro tyle silników chcesz obsłużyć i do każdego L297. Taniej byłoby zwalić całą pracę na mikrokontroler i wykorzystać jakieś rejestry przesuwne np. 74HC595 za mniej niż złotówkę: http://mikrokontrolery.blogspot.com/2011/03/lcd-hd44780-na-3-pinach-74hc595.html
    Stąd pytanie: Jak bardzo mikrokontroler będzie obciążony?
  • #3 14878568
    cesc22
    Poziom 8  
    Dzięki za szybką odpowiedź. Tego się nie spodziewałem :P.

    1. Miałem go już przed budowaniem układu, więc chciałem wykorzystać. A czytałem, że jest dość przyzwoitym układem. Brałem pod uwagę jeszcze LM285Z-1.2, AD580JH i REF195GSZ.
    Jeszcze martwię się o dokładność, sygnał analogowy trzyma ze sobą ten cały syf zakłóceń i szumów. Postaram się jak najdokładniej filtrować i odseparować część cyfrową od analogowej. Jednak jeszcze zainteresowały mnie enkodery magnetyczne.
    Posiadam potencjometry, obrotowe liniowe. Wymagam rozdzielczości, żeby była uC widział różnicę przy zmianie przynajmniej 1 stopień.

    2. Liczę się z kosztami L297, jednak prostota tego rozwiązania przemawia do mnie. Kod będzie dużo bardziej przejrzysty no i zostaje więcej miejsca na program.
    Może ktoś jest w stanie polecić jakiś sterownik, który pozwala obsłużyć kilka silników krokowych.

    Zastanawiałem się jeszcze nad dołożeniem drugiego uC(Slave) i w ten sposób odciążyć 644p lub nawet zmienić na 328p. Sterowanie silnikami odbywałoby się wtedy poprzez drugi uC. pozostaje jeszcze kwestia pomięci. Gdyby ruch był nagrywany przez np 5s(rejterowanie zmiany co 0.01 lub 0.02 sekundy) to zapcha się cała pamięć. Więc chyba warto byłoby podłączyć jakąś kartę SD.

    Dzięki za rady. Pozdrawiam.
REKLAMA