Systemy Wbudowane. Arduino dołączanie urządzeń Wersja Arduino bez płytki Arduino. Czyli... Eliminowanie modułu z projektu. Na płytce...

Podobne dokumenty
Systemy Wbudowane. Arduino dołączanie urządzeń Wersja Arduino więcej portów I/O. Układy serii 74. Układy serii 74xx a seria 40xx

Systemy Wbudowane. Arduino rozszerzanie Wersja Plan. Biblioteka EPROM Arduino bez płytki Arduino. Czyli... Co musimy mieć, aby uruchomić chip?

Systemy Wbudowane. Arduino - rozszerzanie. Podłączanie wyświetlacza LCD. Podłączanie wyświetlacza LCD. Podłączanie wyświetlacza LCD

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307

MCAR Robot mobilny z procesorem AVR Atmega32

Projektowanie urządzeń mikroprocesorowych cz. 2 Wykład 4

Systemy Wbudowane. Arduino, AVR. Arduino. Arduino. Arduino. Oprogramowanie. Mikrokontroler. Mikrokontroler Platforma Arduino. Arduino IDE: Arduino C:

KAmduino UNO. Rev Źródło:

Silnik prądu stałego. Sterowanie silnika prądu stałego

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

Wejścia logiczne w regulatorach, sterownikach przemysłowych

KAmduino UNO. Płytka rozwojowa z mikrokontrolerem ATmega328P, kompatybilna z Arduino UNO

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

UNO R3 Starter Kit do nauki programowania mikroprocesorów AVR

Zestaw Startowy EvB. Więcej informacji na stronie:

StrK Sterownik bipolarnego silnika krokowego

Spis treści. Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

Tematyka zajęć. Przypomnienie: Prawo Ohma. Przypomnienie: I prawo Kirchhoffa. Jak płynie prąd? Jak płynie prąd?

Moduł prototypowy X3-DIL64 z procesorem ATxmega128A3U-AU

SDD287 - wysokoprądowy, podwójny driver silnika DC

Proste układy wykonawcze

Rafał Staszewski Maciej Trzebiński, Dominik Derendarz

Wyniki (prawie)końcowe - Elektroniczne warcaby

Edukacyjny sterownik silnika krokowego z mikrokontrolerem AT90S1200 na płycie E100. Zestaw do samodzielnego montażu.

SDD287 - wysokoprądowy, podwójny driver silnika DC

Przypomnienie: Prawo Ohma. Przypomnienie: I prawo Kirchhoffa. Warunki zaliczenia. Jak płynie prąd? Tematyka zajęć. Warunki zaliczenia laboratorium:

Płytka uruchomieniowa AVR oparta o układ ATMega16/ATMega32. Instrukcja Obsługi. SKN Chip Kacper Cyrocki Page 1

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

INSTRUKCJA OBSŁUGI.

HC541 8-bitowy bufor jednokierunkowy HC245 8-bitowy bufor dwukierunkowy HC244 dwa 4-bitowe bufory jednokierunkowe

Mikrokontrolery AVR techniczne aspekty programowania

Technika Mikroprocesorowa

Płytka uruchomieniowa XM64

ISP ADAPTER. Instrukcja obsługi rev.1.1. Copyright 2009 SIBIT

Programator mikrokontrolerów AVR

PROJECT OF FM TUNER WITH GESTURE CONTROL PROJEKT TUNERA FM STEROWANEGO GESTAMI

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

Poradnik programowania procesorów AVR na przykładzie ATMEGA8

VamsterL. Opis sterownika. wersja 1.0

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:

Kurs Elektroniki. Część 5 - Mikrokontrolery. 1/26

Systemy Wbudowane. Arduino C. Arduino C - stałe. Arduino C - Stałe. Arduino C - Stałe. Funkcje matematyczne. Arduino C - Stałe

Arduino dla początkujących. Kolejny krok Autor: Simon Monk. Spis treści

MOD Xmega explore z ATXmega256A3BU. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Zrób to sam : generowanie ruchu, światła i dźwięku za pomocą Arduino i Raspberry Pi / Simon Monk. Gliwice, Spis treści

W semestrze letnim studenci kierunku Aplikacje Internetu Rzeczy podczas ćwiczeń z programowania CAD/CAM

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

Płytka laboratoryjna do współpracy z mikrokontrolerem MC68332

Zmierzyć się z żywiołami, czyli jak zbudować własną stację badawczą! Zaczynamy! Pole komunikatów programu. Nawigacja w programie Arduino

Sprzężenie mikrokontrolera (nie tylko X51) ze światem zewnętrznym cd...

Wyjścia analogowe w sterownikach, regulatorach

Układy zegarowe w systemie mikroprocesorowym

MikloBit ul. Cyprysowa 7/ Jaworzno. rev MB-AVR-ISP programator

MOD Xmega explore z ATXmega256A3BU. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

4 Adres procesora Zworkami A0, A1 i A2 umieszczonymi pod złączem Z7 ustalamy adres (numer) procesora. Na rysunku powyżej przedstawiono układ zworek dl

Płytka ewaluacyjna z ATmega16/ATmega32 ARE0021/ARE0024

Uniwersalny sterownik silnika krokowego z portem szeregowym RS232 z procesorem AT90S2313 na płycie E200. Zestaw do samodzielnego montażu.

Aoi Ryuu. v2.0 moduł z mikroprocesorem Atmega169 dla makiety dydaktycznej Akai Kaba

PRZEDWZMACNIACZ PASYWNY Z SELEKTOREM WEJŚĆ. dokumentacja. (wersja 1.1

AP3.8.4 Adapter portu LPT

Arduino Power Shield. Moduł Arduino do sterowania silnikami dużej mocy i pomiaru prądu

Sterowanie urządzeniami elektronicznymi przy użyciu portu LPT

E-TRONIX Sterownik Uniwersalny SU 1.2

Płytka uruchomieniowa XM32

Kurs Elektroniki. Zastosowanie elektroniki w robotyce cz

MOD STM32 explorem0 z STM32F051C8T6. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

MODUŁ UNIWERSALNY UNIV 3

2.1 Porównanie procesorów

Moduł uruchomieniowy AVR ATMEGA-16 wersja 2

ZL9AVR. Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019)

Kod produktu: MP01611

Instrukcja obsługi. SQCA244 instrukcja obsługi

Instrukcja obsługi AP3.8.4 Adapter portu LPT

Uczeń/Uczennica po zestawieniu połączeń zgłasza nauczycielowi gotowość do sprawdzenia układu i wszystkich połączeń.

SWITCH & Fmeter. Fmax 210MHz. opr. Piotrek SP2DMB. Aktualizacja

Konstrukcja mostka mocy typu "H" opartego o układ HIP4081A Robert Szlawski

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

ZL8AVR. Płyta bazowa dla modułów dipavr

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

Laboratorium 2 Sterowanie urządzeniami z wykorzystaniem systemu plików Intel Galileo

Moduł prototypowy.. Leon Instruments. wersja 1.0

Systemy wbudowane Arduino, AVR

Instrukcja dla: Icomsat v1.0 SIM900 GSM/GPRS shield for Arduino oraz dla GPRS Shield produkcji Seeedstudio.

Sterowniki Programowalne Sem. V, AiR

Sterownik CNC SSK-3F/4,5A/UK

Instrukcja obsługi Poczwórny sterownik silników krokowych SQCA244 Bipolarny sterownik dla 4 silników krokowych do 4A z wejściem LPT,

USB AVR JTAG. Instrukcja obsługi rev.1.0. Copyright 2011 SIBIT

Niektóre piny mogą pełnić różne role, zależnie od aktualnej wartości sygnałów sterujących.

Zastosowania mikrokontrolerów w przemyśle. Cezary MAJ Katedra Mikroelektroniki i Technik Informatycznych

Płyta uruchomieniowa EBX51

Transkrypt:

Arduino bez płytki Arduino Kompletne Arduino Uno jest -x droższe od samego mikrokontrolera, Do danego układu niekoniecznie potrzebne są wszystkie oferowane przez moduł Arduino Uno urządzenia, np. Systemy Wbudowane Port szeregowy przez USB Słabe stabilizatory zasilania Słaby stabilizator.v Arduino dołączanie urządzeń Wersja 0 mgr inż. Marek Wilkus Wydział Inżynierii Metali i Informatyki Przemysłowej AGH Kraków http://home.agh.edu.pl/~mwilkus Rozwiązanie: Użycie samego chipu ATMega (lub ATMega kb na program, chip jeszcze tańszy) we własnym układzie Czyli... Co musimy mieć, aby uruchomić uc? Mikrokontroler Zasilanie 5V, Źródło częstotliwości taktowania (6MHz, względnie MHz), Podciągnięcie pinu RESET do stanu wysokiego, Kondensator odsprzęgający. Na płytce... Eliminowanie modułu z projektu Zapisujemy do Arduino końcową wersję programu, Po skończonym testowaniu z modułem wykonujemy i testujemy podstawowy układ bez modułu: Podstawa: Zapewnienie zasilania, taktowania, rezystora i kondensatorów, Tłumaczenie pinów Arduino na piny ATMega, odpowiednie podłączenia, Próba na płytce stykowej z układem usuniętym z Arduino, Wykonanie końcowej wersji układu. 5 6

A co z Arduino? Najprostszy programator: bsd Programowanie nowego, czystego układu AVR jako Arduino przy użyciu istniejącego modułu Arduino ze szkicem ArduinoISP: Działa przy użyciu portu równoległego, Bardzo prosta budowa, Działa niezależnie od Arduino przyjmuje pliki HEX bootloadera oraz fuse bity, Program avrdude działa dla każdej platformy (w Linuksie niezbędne uprawnienia administratora). Programator bsd ATMega LPT Vcc 5 /RESET SCK MOSI MISO 0 GND Plik.hex? Fusebity? Plik hardware/arduino/avr/boards.txt w instalacji Arduino: Użytkowanie przy pomocy programu avrdude: Czyścimy układ: uno.name=arduino/genuino Uno avrdude -p mp -c bsd -e uno.vid.0=0x uno.pid.0=0x00 uno.vid.=0x uno.pid.=0x000 uno.vid.=0xa0 uno.pid.=0x00 uno.vid.=0x uno.pid.=0x0 Wgrywamy plik HEX: avrdude -p mp -c bsd -U flash:w:cpu.hex Ustawiamy fuse bity: avrdude -p mp -c bsd -u -U lfuse:w:0xff:m -U hfuse:w:0xc:m Od tej pory układ nie będzie widoczny dla programatora dopóki nie dostarczymy źródła częstotliwości! uno.bootloader.tool=avrdude uno.bootloader.low_fuses=0xff uno.bootloader.high_fuses=0xde uno.bootloader.extended_fuses=0x05 uno.bootloader.unlock_bits=0xf uno.bootloader.lock_bits=0x0f uno.bootloader.file=optiboot/optiboot_ atmega.hex uno.build.mcu=atmegap uno.upload.tool=avrdude uno.build.f_cpu=6000000l uno.upload.protocol=arduino uno.build.board=avr_uno uno.upload.maximum_size=56 uno.upload.maximum_data_size=0uno.build.core=arduino uno.build.variant=standard uno.upload.speed=500 Arduino więcej portów I/O 0 Układy serii Realizują proste funkcje logiczne: bramki, liczniki, rejestry. Poziomy TTL Są cegiełkami do budowy bardziej złożonych układów Bezpośrednio podłączane Podciągnięte wejścia Wyjścia normalne i z otwartym kolektorem Szeroko dostępne w różnych wykonaniach Użycie pinów analogowych Liczniki Multipleksery Rejestr przesuwny Zatrzaski Drugi uc 55 Komercyjne ekspandery LS00

Układy serii Układy serii xx a seria 0xx Poziomy CMOS, Podobne funkcje, inne wyprowadzenia, Zasilanie do 5V, Mogą je uszkodzić wyładowania elektrostatyczne (szczególnie starsze układy), Do połączenia z wymagają rezystora podciągającego do poziomu wysokiego CMOS. Kompatybilne z TTL i CMOS: HCT... Seria do czego służy układ? Nota katalogowa Tablica prawdy Schemat logiczny http://www.globalspec.com/reference/0/0/appendix--pinconfiguration-of--series-integrated-circuits Użycie wyprowadzeń analogowych Nie są potrzebne dodatkowe biblioteki, Nie jest potrzebny dodatkowy sprzęt, Samo programowanie, Zastosowania Eksperymenty - Brak PWM, - Kosztem ADC, - Tylko 6 pinów LS 5 Licznik 6 Multiplekser Rozszerzanie wyjść, Tanie i dostępne układy Dużo wyjść (np. HC50 szt) Linia OE. Zarówno wejścia jak i wyjścia Możliwy przesył szeregowy danych z kilku pinów. Możliwe przełączanie przełączanych sygnałów łączenie kaskadowe. - Tylko wyjścia, - Potrzebny czas na wyklikanie stanu, - Dodatkowy układ. - Szybkość działania, - Wysoka cena układów o dużej szybkości.

Rejestr przesuwny Przełączniki Proste przełączanie dużej ilości wyprowadzeń, Możliwy wybór kierunku, Możliwość znacznego rozszerzania wyjść, Serial input - parallel output, Niska cena. - Wyższa cena układów, - Mniejsza popularność, - Konsekwencje w przypadku uszkodzenia - Tylko wyjścia - Konieczność załadowania stanu. - Dodatkowy układ (można je łączyć w kaskadę). Zatrzaski 0 Drugi uc Szybkie przełączanie wyprowadzeń Multipleksowanie Łatwość użycia Biblioteki Wejście/wyjście, ADC, PWM. - Skomplikowane sterowanie - Możliwość uszkodzenia - Tylko jeden kierunek - Wymaga oprogramowania - Cena - Niższa szybkość. 55 i podobne Programowalny sterownik Wejście i wyjście, Programowanie przez zapis wartości piny I/O Dodatkowe funkcje (np. PWM), Łatwiejsze programowanie, Najczęściej tylko jeden układ. - Wymagania mikroprocesorowe, nie dla mikrokontrolera (konieczność emulacji sygnałów), - Niska prędkość, - Wyższa cena układów - Często niska wydajność prądowa - Wysoka cena - Specjalizowany układ - Problemy z przyszłą dostępnością.

Jak użyć mniej pinów? Klawiatura Komercyjne ekspandery Łatwość programowania Gotowe biblioteki Łatwe podłączenie Dodatkowe interfejsy - Bardzo wysokie ceny - Wewnątrz jest któreś z omawianych rozwiązań. 5 Klawiatura: Lepsze rozwiązanie 6 Klawiatura: Pin analogowy KEY KEY Do Arduino ANALOG IN Klawiatura: Ekstremalne rozwiązanie (RC) Wyjścia: Multipleksowanie wyjść Zamiast x= wyjść użyte =. Możliwość dalszego zmniejszania wyjść: np. wejścia wyświetlaczy () zapis na bitach, użycie dekodera. (Eizo F0 schematic) http://hackyourmind.org 0

Urządzenia wyjścia Urządzenia wyjścia Przekaźnik, odbiorniki do ok. mocy tranzystora: Układy Darlingtona: Sterowanie silnikiem krokowym: np. ULN0. uc 6 5 0 Sterowanie N00 BC5 K Zasilanie silnika Silniki krokowe Jak to działa? Wał jest namagnesowany w odpowiedni sposób, W przeciwieństwie do liniowych, możliwe jest przestawienie o ustalony kąt, Uaktywniane są kolejne elektromagnesy, Magnes na wale jest przyciągany przez jeden elektromagnes, a odpychany przez inny co powoduje obrót o jeden krok. Moment jest (w przedziale roboczym) odwrotnie proporcjonalny do prędkości, Wymagają znacznych prądów (więc i sterowników), Możliwa praca wyłącznie na przyciąganie - mniejszy moment, łatwiejsze sterowanie. Łatwa dostępność z odzysku drukarki, napędy CD/FDD, skanery, Biblioteki do ich obsługi są w Arduino, a sterowniki są proste w budowie. Poruszane są przez doprowadzenie prądu do odpowiednich uzwojeń w prawidłowej kolejności, silniki takie mają..6 uzwojeń. Źródło: Wikimedia comons Rodzaje silników krokowych Sterownik silnika Bipolarne Silniki unipolarne: wyprowadzenia 6 wyprowadzeń Unipolarne,, 5 wyprowadzeń 5 Żródło: Dokumentacja Arduino https://www.arduino.cc/en/reference/stepper 6

Sterownik silnika Sekwencja sterowania Zauważmy, że zawsze: Dla pinów: Silniki bipolarne: C 0!= C Step C0 C C C 0 0 0 0 0 0 0 0 Układ LD: C!= C Możemy więc użyć tylko pinów! Inwerter:...lub układ LS0 (6x inwerter) Biblioteka stepper Urządzenia wyjścia #include <Stepper.h> Tyrystor/triak sterowanie prądem zmiennym: Stepper mystepper(00,,, 0, ); Piny, do których podłączono sterownik (, lub 5 pinów) Ilość kroków/obrót void setup() { mystepper.setspeed(60); } uc Prędkość (~obr/min) void loop() { mystepper.step(); delay(0); } Ilość kroków (może być ujemna) 6 5 0 SEPARACJA GALWANICZNA Źródło: CNC Router Source 0 Separacja galwaniczna: Transoptor (DC), Optotriak (AC) Podłączenie: Jak LED (separacja wyjścia) Jak łącznik (separacja wejścia) Dziękuję za uwagę Używane do zabezpieczenia przed: Wysokim napięciem Uszkodzeniem portu Pętlą masy Pamiętamy o ograniczeniu prądu!