Zrób linijkę elektryczną: 7 kroków

Zrób linijkę elektryczną: 7 kroków

Spisu treści:

Anonim

Robię linijkę elektryczną.

Cecha:

  1. Użyj 32-bitowego mikrokontrolera STM32C8T6.
  2. Użyj kodera linii 512.
  3. Precyzja 0,1 mm.
  4. jednostka: mm, cm, metr i km.

Materiał:

STM32C8T6

512 enkoder liniowy

Wyświetlacz OLED

itp.

Kieszonkowe dzieci:

Krok 1: Zaprojektuj płytę STM32

Przepraszam za mój zły język angielski!

Mam 24 lata student inżynierii z Guangxi w Chinach. To moja ulubiona gra. Chcę zdobyć przyjaciół, którzy pomogą mi uczyć się angielskiego.:)

Frist, projektuję płytkę PCB stm32, zawiera ona kilka przycisków, kryształ i usb, aby wykorzystać regulator IC CP2102,5V do 3V.

A potem wydałem 30MB (około 6 $) na płytkę PCB. Spraw, aby płytka PCB była tania i łatwa w Chinach, 10 cm * 10 cm, 10PCS PCB tylko olny 50RMB (około 8 USD).

Krok 2: Przylutuj płytę STM32

Około tygodnia, fabryka PCB wyśle ​​do ciebie płytki PCB, dzięki czemu możesz teraz przylutować płytkę PCB.

Krok 3: Zrób koło za pomocą CNC

Moi znajomi mają maszynę CNC, więc używam maszyny CNC do cięcia płyty akrylowej i robię koło i niektóre konstrukcje.

Krok 4: Zainstaluj koło do kodera

Kupuję enkoder inkrementalny 512 linii z www.taobao.com, taobao.com, podobnie jak ebay w Chinach.

Ten mini enkoder inkrementalny o wartości około 40 USD i 512 linii oznacza co jeden obrót koder wyśle ​​512 impulsów.

Średnica koła wynosi 16,3 mm, więc obwód koła wynosi 16,3 mm * 3,1415926≈51,2

mm, a co jeden obrót enkoder wyśle ​​512 impulsów, więc każdy impuls odpowiada 51,2 mm / 512 impulsów = długość 0,1 mm.

Krok 5: Dodaj wyświetlacz OLED i akumulator litowo-jonowy

Wyświetlacz OLED kosztuje w Chinach 1,5 USD, zasilacz 3,3 V, interfejs SPI i 128 * 64 pikseli.

Krok 6: Program i testy

Używam logiki saleae do pokazania fali impulsowej enkodera i używam Keil MDK do programowania STM32.

Ten enkoder ma 4 piny, VCC, PULSE, DIRECTION i GROUND. Jeśli obrócisz enkoder, enkoder wyśle ​​pewne impulsy, jeśli DIRECTION pin jest wysoki, kierunek oznaczania jest przedni, w przeciwnym razie, jeśli DIRECTION pin jest niski, oznacza to kierunek do tyłu.

STM32F103C8T6 ma interfejs enkodera w GPIOA 12, więc podłączam PULSE do STM32 GPIOA 12, a DIRECTION łączy się z GPIOA 11.

OLED pokazuje moją nazwę szkoły, nazwę projektu i wersję oprogramowania. Znasz chiński?:)

Krok 7: Pokaż czas!

kiedy zacznę mierzyć z odległości 90 mm, zakończ pomiar na 0 mm, wynik pomiaru OLED wynosi 90,0 mm, a kiedy zacznę mierzyć na 0 mm, odwróć go do 90 mm, wynik pomiaru OLED wynosi -90,0 mm.

możesz zmienić jednostkę wyniku jako: mm, cm, m i km

Definiuję podwójną zmienną, aby zapisać wynik pomiaru, więc limit wynosi 1.79769e + 308 ~ 2.22507e-308 mm

Używam tej linijki do pomiaru obwodu butelki, pokaz OLED -140,1 mm, myślę, że ten obwód butelki może wynosić 140 mm.

przepraszam za mój zły angielski. Chcę się zaprzyjaźnić.

Kod źródłowy i pliki PCB proszę napisz do mnie [email protected].

Dzięki!