Operácie

NAVEZ Projekt

Zo stránky SensorWiki

NAVEZ: Navrhovanie elektronických zariadení

Na tejto stránke nájdete informácie k semestrálnemu projektu z predmetu NAVEZ


Zadanie

Navrhnite elektronické zariadenie s minimálnym počtom 10 komponentov, vypracujte výrobnú dokumentáciu, objednajte komponenty, vyrobte plošný spoj, zariadenie postavte a oživte, predveďte funkciu a odovzdajte dokumentáciu k nemu.

Termíny

Smrteľné dedlajny:

  • 25. 11. Schéma zapojenia a zoznam súčiastok (kupujeme súčiastky).
  • 02. 12. Navrhnutý plošný spoj a vygenerované gerber súbory (dps do výroby).
  • 16. 12. Zariadenie oživené a predvádzanie, dokumentácia. Odovzdávanie, zápočet.

Spoločný projekt (ak nemáte lepší)

Použité komponenty:

Limity

    • Cena 10 Eur / komponenty
    • Rozmer DPS 30x45 mm

Všetko nad tieto limity si musíte uhradiť sami.

Objednávanie súčiastok

Nakupovať budeme v obchode sos.sk

Formát objednávky:

Obj.číslo;Počet
Obj.číslo;Počet
...


Výroba plošných spojov

DPS nám vyrobí firma PRINTED s.r.o.

Technologické požiadavky a obmedzenia: http://www.printed.cz/konstrukcni-a-zadavaci-podminky

Programovanie

Z tejto časti nemusíte mať obavy, programovanie je jednoduché a budeme využívať existujúce programy s knižnicami, ktoré si len zľahka modifikujete pre svoje potreby.

Ukážkové programy:

#include <SevSeg.h>

SevSeg MyDisp; //Instantiate a seven segment controller object

void setup()
{
  byte numDigits = 4;   
  byte digitPins[] = {2, 3, 4, 5};                    // Digits:   1,2,3,4
  byte segmentPins[] = {6, 7, 8, 11, 12, 13, 14, 15}; // Segments: A,B,C,D,E,F,G,Period

  MyDisp.begin(COMMON_ANODE, numDigits, digitPins, segmentPins);
  MyDisp.setBrightness(80); 
}

void loop()
{
  MyDisp.setNumber(1234,9);  // Second argument is decimal place

  MyDisp.refreshDisplay();   // Must run repeatedly
}
#include "SevSeg.h"
SevSeg myDisplay;

#define FOUR_DIGITS 4
#define A1 2
#define A2 3
#define A3 4
#define A4 5
#define SegA 6
#define SegB 7
#define SegC 8

int value;
int oldvalue;
char tempString[5];

//-------------------------------------------------------------------------------------------

void setup()
{
  value = 0;
  oldvalue = 0;

  myDisplay.Begin(COMMON_ANODE, FOUR_DIGITS, A1, A2, A3, A4, SegA, SegB, SegC, 11, 12, 13, 14, 15);
  myDisplay.SetBrightness(100); //Set the display to 100% brightness level
}
//-------------------------------------------------------------------------------------------
void loop()
{
  value = analogRead(5);                          // measurement
  value = (15*oldvalue + value)/16;               // simple filter
   sprintf(tempString, "%4d",  (long)value, DEC); // create output string
   myDisplay.DisplayString(tempString, 0);        // display value on disp
   oldvalue = value;
    
}
//-------------------------------------------------------------------------------------------