Operácie

Oznamovač: Rozdiel medzi revíziami

Zo stránky SensorWiki

StudentDTV (diskusia | príspevky)
Bez shrnutí editace
StudentDTV (diskusia | príspevky)
Bez shrnutí editace
Riadok 15: Riadok 15:
__TOC__
__TOC__


== Analýza a opis riešenia ==
== Analýza a opis riešenia ==


Potrebujeme tieto súčiastky:
Potrebujeme tieto súčiastky:
Riadok 25: Riadok 25:
* 3 tlačítka
* 3 tlačítka


Na programovanie mikrokontroléra budeme používať Micropython, ktorý zavedieme na Pico W nasledovne: Zapojíme Pico do USB portu počítača, zatiaľ čo držíme tlačítko na doske kontroléra. Pico W by sa mal zobraziť ako bežný USB disk. Stiahneme najnovší micropython firmware z tejto stránky: [https://www.raspberrypi.com/documentation/microcontrollers/micropython.html#what-is-micropython link]. Stránka obsahuje taktiež názornejší návod inštalácie. Po skopírovaní súboru na Pico, by sa mal odpojiť, a po opätovnom zapojení schopný komunikácie cez sériový port. Na komunikáciu s Picom a najmä na jeho programovanie som použil jednoduché, no od výrobcu odporúčané, Python IDE - [https://thonny.org/ Thonny]. Podobnú funkcionalitu ako Thonny poskytuje taktiež plugin Pico-W-Go do praktického IDE Visual Studio Code, no je menej intuitívny a spoľahlivý.
Na programovanie mikrokontroléra budeme používať Micropython, ktorý zavedieme na Pico W nasledovne: Zapojíme Pico do USB portu počítača, zatiaľ čo držíme tlačítko na doske kontroléra. Pico W by sa mal zobraziť ako bežný USB disk. Stiahneme najnovší micropython firmware z tejto stránky: [https://www.raspberrypi.com/documentation/microcontrollers/micropython.html#what-is-micropython link]. Stránka obsahuje taktiež názornejší návod inštalácie.


Na ovládanie najdôležitejšej časti projektu, e-ink displeja, je možné stiahnuť micropython súbor od výrobcu, ktorý uľahčuje komunikáciu (skrz SPI) s modulom. Tento súbor sa dá stiahnuť [https://github.com/waveshareteam/Pico_ePaper_Code/blob/main/python/Pico_ePaper-2.9.py tu]. Tento driver je kompatibilný aj s modulom špecificky zameraným na Pico/Pico W. Po stiahnutí a skopírovaní do flash pamäte mikrokontroléra zapojíme displej nasledovne:
Po skopírovaní súboru na Pico, by sa mal odpojiť, a po opätovnom zapojení schopný komunikácie cez sériový port. Na komunikáciu s Picom a najmä na jeho programovanie som použil jednoduché, no od výrobcu odporúčané, Python IDE - [https://thonny.org/ Thonny]. Podobnú funkcionalitu ako Thonny poskytuje taktiež plugin Pico-W-Go do praktického IDE Visual Studio Code, no je menej intuitívny a spoľahlivý.
* VCC -> VSYS
* GND -> GND
* DIN -> GPIO_11
* CLK -> GPIO_10
* CS -> GPIO_09
* DC -> GPIO_08
* RST -> GPIO_12
* BUSY -> GPIO_13
[https://www.raspberrypi.com/documentation/microcontrollers/images/picow-pinout.svg Ťahák na piny.]


[[Súbor:ledRGB.jpg|400px|thumb|center|RGB LED.]]
Na ovládanie najdôležitejšej časti projektu, e-ink displeja, je možné stiahnuť micropython súbor od výrobcu, ktorý uľahčuje komunikáciu (skrz SPI) s modulom. Tento súbor sa dá stiahnuť [https://github.com/waveshareteam/Pico_ePaper_Code/blob/main/python/Pico_ePaper-2.9.py tu]. Tento driver je kompatibilný aj s modulom špecificky zameraným na Pico/Pico W. Po stiahnutí a skopírovaní do flash pamäte mikrokontroléra zapojíme displej podľa tejto schémy:


[[Súbor:schema.svg|400px|thumb|center|Schéma zapojenia LCD displeja.]]
[[Súbor:displej_zapojenie.png|400px|thumb|center|E-ink modul zapojenie]]
 
Nasledovne spustíme stiahnutý micropython driver, keďže obsahuje krátke demo na test displeja (displej môže byt poškodený). Pri programovaní e-ink displejov sa neodporúča veľmi časté obnovovanie displeja - nie je na to stavaný a mohol by sa poškodiť.




Riadok 46: Riadok 39:


Algoritmus programu je....
Algoritmus programu je....
<tabs>
<tab name="AVR C-code"><source lang="c++" style="background: LightYellow;">
#include <avr/io.h>
int main(void)
{
  unsigned int measuredValue;
  while (1)
  {
    /*  relax  */ 
  }
  return(0);
}
</source></tab>
<tab name="filename.h"><source lang="c++" style="background: LightYellow;">
#include <avr/io.h>
void adc_init(void);                                  // A/D converter initialization
unsigned int adc_read(char a_pin);
</source></tab>
</tabs>


Pridajte sem aj zbalený kompletný projekt, napríklad takto (použite jednoznačné pomenovanie, nemôžeme mať na serveri 10x ''zdrojaky.zip'':  
Pridajte sem aj zbalený kompletný projekt, napríklad takto (použite jednoznačné pomenovanie, nemôžeme mať na serveri 10x ''zdrojaky.zip'':  

Verzia z 23:58, 20. jún 2023

Záverečný projekt predmetu DTV / LS2023 - Martin Bartoš


Úvod

Mojím cieľom pre tento projekt bolo najmä oboznámenie sa s e-ink displejom a bezdrôtovou funkcionalitou zvoleného mikrokontroléra. Tento projekt ma však aj dôvernejšie oboznámil s 3D modelovaním v programe OpenSCAD a s opravou, a jej možnými rizikami, 3D tlačiarne.

Literatúra:


Analýza a opis riešenia

Potrebujeme tieto súčiastky:

  • Raspberry Pi Pico W
  • Waveshare 2.9 palcový modul s e-ink displejom
  • Li-Po batéria
  • TP4056 nabíjací modul s ochranným obvodom
  • prepínač
  • 3 tlačítka

Na programovanie mikrokontroléra budeme používať Micropython, ktorý zavedieme na Pico W nasledovne: Zapojíme Pico do USB portu počítača, zatiaľ čo držíme tlačítko na doske kontroléra. Pico W by sa mal zobraziť ako bežný USB disk. Stiahneme najnovší micropython firmware z tejto stránky: link. Stránka obsahuje taktiež názornejší návod inštalácie.

Po skopírovaní súboru na Pico, by sa mal odpojiť, a po opätovnom zapojení schopný komunikácie cez sériový port. Na komunikáciu s Picom a najmä na jeho programovanie som použil jednoduché, no od výrobcu odporúčané, Python IDE - Thonny. Podobnú funkcionalitu ako Thonny poskytuje taktiež plugin Pico-W-Go do praktického IDE Visual Studio Code, no je menej intuitívny a spoľahlivý.

Na ovládanie najdôležitejšej časti projektu, e-ink displeja, je možné stiahnuť micropython súbor od výrobcu, ktorý uľahčuje komunikáciu (skrz SPI) s modulom. Tento súbor sa dá stiahnuť tu. Tento driver je kompatibilný aj s modulom špecificky zameraným na Pico/Pico W. Po stiahnutí a skopírovaní do flash pamäte mikrokontroléra zapojíme displej podľa tejto schémy:

E-ink modul zapojenie

Nasledovne spustíme stiahnutý micropython driver, keďže obsahuje krátke demo na test displeja (displej môže byt poškodený). Pri programovaní e-ink displejov sa neodporúča veľmi časté obnovovanie displeja - nie je na to stavaný a mohol by sa poškodiť.


Algoritmus a program

Algoritmus programu je....

Pridajte sem aj zbalený kompletný projekt, napríklad takto (použite jednoznačné pomenovanie, nemôžeme mať na serveri 10x zdrojaky.zip:

Zdrojový kód: zdrojaky.zip


Overenie

Na používanie našej aplikácie stačia dve tlačítka a postup používania je opísaný v sekcii popis riešenia. Na konci uvádzame fotku záverečnej obrazovky pred resetom. Vypísaný je tu priemerný čas a najlepší čas.

Aplikácia.

Video:

Kľúčové slová 'Category', ktoré sú na konci stránky nemeňte.