![Zrób linijkę elektryczną: 7 kroków Zrób linijkę elektryczną: 7 kroków](https://img.gwsigeps.com/img/circuits/make-a-electrical-ruler-8.jpg)
Spisu treści:
- Kieszonkowe dzieci:
- Krok 1: Zaprojektuj płytę STM32
- Krok 2: Przylutuj płytę STM32
- Krok 3: Zrób koło za pomocą CNC
- Krok 4: Zainstaluj koło do kodera
- Krok 5: Dodaj wyświetlacz OLED i akumulator litowo-jonowy
- Krok 6: Program i testy
- Krok 7: Pokaż czas!
Robię linijkę elektryczną.
Cecha:
- Użyj 32-bitowego mikrokontrolera STM32C8T6.
- Użyj kodera linii 512.
- Precyzja 0,1 mm.
- 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!