Een Mini Arduino programmeerbare 4 kanaaloproep DC-DVM (3 / 8 stap)

Stap 3: Circuit bouw


We beginnen door te bouwen een scheidingslijn van de spanning en het verbinden met de Arduino, test het circuit met een eenvoudige schets, en gaat u verder met de bouw van de rest van de circuits.
Als we eenmaal de ingangen werken, zullen wij installeren de 1.8" TFT LCD-kleurenscherm en een schets wilt weergeven van de input meting op het schrijven.
Vervolgens zullen we verschillende opties voor software en hardware te verbeteren of aanpassen van de DVM ontdekken.

Dus laten we beginnen door te bouwen van de scheidingslijn van de spanning op het breadboard en het verbinden van A0 pin van de Arduino.
Kijk naar het circuit diagram en de andere foto's om u te begeleiden met de stappen.

Zodra het circuit is samengesteld, sluit de Arduino op de USB-poort op uw PC en uploaden van de volgende test schets die de spanning verbonden aan de vrije 1Meg weerstand been via de seriële monitor wordt weergegeven.

Kopieer en plak de volgende schets aan de Arduino IDE.

// -----------------Sketch Start-----------------------------

/* -----------------------------------------------------------
Programma: Seriële DVM

Beschrijving: DC voltmeter met spanning op seriële monitor weergegeven
Geen kleur TFT LCD nog!

Hardware: Arduino NANO of Uno met spanning divider op A0.


Software: Geschreven en ontwikkeld met behulp van de Arduino 1.0.3 software

Datum:

Auteur:
--------------------------------------------------------------*/

voltage divider kalibratie waarden
#define Dv1 11

ADC referentie spanning / kalibratie waarde
#define VREF 5

zweven V1 = {0,00};

VOID Setup
{
Serial.begin(9600);
}

void loop
{
V1 = analogRead(0);
Serial.Print ("spanning @ pin A0");
Serial.println(((v1*VREF) / 1023)) * Dv1, 2);
}
// -----------------Sketch End-----------------------------

Herzie wat er gebeurt;
De controller van de Atmega gebruikt voor de Arduino bevat een on-board 6-kanaals analoog-naar-digitaal (A/D) converter. Het conversieprogramma heeft 10 bit resolutie, die het resultaat van een geheel getal van 0 tot 1023 (210= 1024, 0 punten, dus het is 1023 stappen) voor de waarde van 0 tot 5 volt.

We willen converteren van de A/D waarde terug naar de werkelijke spanning die we meten.

We moeten vermenigvuldig het resultaat met 5 en deling door 1023 aan te passen de resultaatwaarde van de 10 bit a/d Converter.

We zijn ook de spanning delen door 11 met de spanning divider, zodat de spanning we meten (en we willen zien op het display), moet worden vermenigvuldigd met 11 ter compensatie van de divisie.

Dat doen we met de followimg-formule:

Vout=((Vin*(5/1023))*11).

de code voor dit is:

Serial.println(((v1*VREF) / 1023)) * Dv1, 2);

We vermenigvuldigen met 5 (VREF) en verdelen door 1023 de uitvoer van de A/D omzetten in een schaal tussen O en 5, waarna we vermenigvuldigen met 11(Dv1) om te compenseren voor de scheidingslijn van de spanning. De reden we zijn met behulp van variabelen voor de divider en spanningswaarden, is dat deze waarden zal veranderen wanneer we de DVM kalibreert. De '2' aan het einde van de formule bepaalt hoeveel cijfers achter de komma weergeven.

Als je het programma te laden correct, de seriële monitor openen door te klikken op het vergrootglas pictogram in de bovenste rechter hoek van de arduino IDE, moet u gegevens stroomt. Met behulp van een jumper draad, probeer het vrije been van de weerstand van de 1Meg verbinden met de GND Pin pin eerste en vervolgens naar de 5V. U ziet de lezing wijzigen van 0 tot 5v.

Nu we alleen maar te herhalen wat we deed voor het eerste kanaal drie vaker te hebben een 4 kanaals DVM, maar voordat we dat doen, laten we onze TFT kleuren LCD-scherm verbinding te maken met de Arduino. Je moet 7 jumper draden om dit te doen:

De volgende verbinding te maken met de jumpers

TFT LCD.               Arduino

VCC                       5V
GND Gnd
SCL                     13
SDA                     11
CS                       10
RS/DC 9
RES                      8

Opmerking:
In tegenstelling tot mijn andere instructables, zullen we gebruiken de hoge snelheid SPI Interface om te rijden het display zodat de jumper bedrading anders is. Nogmaals, check de foto's om u te begeleiden als je niet zeker hoe het draad omhoog.

U moet twee bibliotheken voor het gebruik van het display te installeren:

Adafruit_GFX.h The Core grafische bibliotheek
Adafruit_ST7735.h de hardwarespecifieke bibliotheek

Downloaden van de bibliotheken en kopieer ze naar de bibliotheekmap Arduino.

Kopieer en plak de schets hieronder naar de Arduino IDE. De schets DVM code is hetzelfde, maar met de toevoeging van de code weer te geven van de spanning op A0 op het LCD-Display.

Compileren en uploaden van de schets aan de Arduino.

// -----------------Sketch Start-----------------------------

/*-----------------------------------------------------------
Programma: TFTLCDDVM

Beschrijving: DC voltmeter met spanning weergegeven
op kleur TFT LCD-scherm met 2 decimalen

Hardware: Arduino NANO met spanning divider op A0.
TFT LCD aangesloten

Software: Ontwikkeld met behulp van de Arduino 1.0.3 software

Datum: 10 maart 2014

Auteur: johnag
--------------------------------------------------------------*/
#define sclk 13
#define mosi 11
#define cs 10
#define dc 9
#define rst 8 / / reset

#include < Adafruit_GFX.h > / / Core grafische bibliotheek
#include < Adafruit_ST7735.h > / / hardwarespecifieke bibliotheek
#include < SPI.h >
Adafruit_ST7735 tft = Adafruit_ST7735 (cs, dc, rst);

voltage divider kalibratie waarde
#define Dv1 11

ADC referentie spanning
#define VREF 5

zweven V1 = {0,00};

VOID Setup
{
Serial.begin(9600);
tft.initR(INITR_BLACKTAB);   initialiseren van een tab ST7735S-chip, zwart
tft.fillScreen(ST7735_BLACK); scherm wissen
tft.setTextColor(ST7735_WHITE);
tft.setTextSize(1);
tft.setCursor(10,0);
TFT.println ("DC voltmeter DVM");
tft.setTextColor(ST7735_RED);
tft.setCursor(0,140);
TFT.println ("Let op max spanning 55vdc");
}

void loop
{
V1 = analogRead(0);
tft.drawLine (0, 20, tft.width ()-1, 20, ST7735_WHITE);
tft.drawLine (0, 130, tft.width ()-1, 130, ST7735_WHITE);
tft.setTextColor(ST7735_YELLOW,ST7735_BLACK);
tft.setTextSize(2);
spanning 1 (pin A0)
spanning wordt vermenigvuldigd met het netwerk van de weerstand
divisie factor voor het berekenen van de werkelijke spanning
tft.setCursor (45, 40);
TFT.println ("V1");
tft.setTextSize(1);
TFT.println ("spanning @ pin A0");
tft.setCursor (20, 80);
tft.setTextSize(2);
Serial.Print ("spanning @ pin A0");
Serial.println(((v1*VREF) / 1023)) * Dv1, 2);
TFT.Print(((v1*VREF) / 1023)) * Dv1, 2);
TFT.Print ("Vdc");

}

//---------------Sketch End----------------------------------------

Gerelateerde Artikelen

Mini arduino Plotter zonder een servomotor

Mini arduino Plotter zonder een servomotor

In dit project die zal ik u tonen hoe zet van twee oude DVD-schijven in een mini plotter.this project is eenvoudig en gemakkelijk om te doen en maakt een goede praktijk, als je wilt om een echte CNC machine (dit is waarom ik begon dit project voor te
Weergave van getallen met behulp van een zelfgemaakte arduino mini schild!

Weergave van getallen met behulp van een zelfgemaakte arduino mini schild!

In dit instructable ik zal je laten zien hoe u kunt besturen van numerieke displays(image below) met behulp van slechts 4 pins [met uitzondering van de macht (V + en gnd)].Deze maakt gebruik van een decoder 4511 ic die ik op een perfboard, met een bo
WEEKLIMATIC Arduino programmeerbare thermostaat

WEEKLIMATIC Arduino programmeerbare thermostaat

Het is een programmeerbare thermostaat Arduino gebaseerd.Tot 9 wekelijkse programma's kunnen worden opgeslagen.Drie modaliteit: SET PROGRAM, AUTO MODE, PROGRAM MODETwee programma modaliteit: op Mode / OFF-modus.. .en meer fuctions, volledig aanpasbaa
Mini Arduino CNC

Mini Arduino CNC

Dit instructable toont u hoe te bouwen van een goedkoop en eenvoudig, maar zeer kleine CNC met behulp van de Arduino UNO. U kunt het dunne hout van de molen, andere schuimen of u kunt gebruiken voor het uitzetten van verschillende schetsen en ook kan
Hoe te programmeren Pro Mini Arduino Arduino Uno en ArduShield - zonder de kabels met

Hoe te programmeren Pro Mini Arduino Arduino Uno en ArduShield - zonder de kabels met

Het hoofddoel van deze instructie is om u te tonen hoe te programmeren in de meest eenvoudige manier Arduino Mini of de Pro Mini Arduino met een Arduino UNO en ArduShield – zonder de kabels.Stap voor stap handleiding, met geen stappen overslaan door
Mini Arduino Multi functie Controller w / LCD Display

Mini Arduino Multi functie Controller w / LCD Display

dit Instructable bouwt voort op de Arduino omgeving minimonitor en Arduino EEG minimonitor Instructables.U kunt maximaal 4 Relais met behulp van de tijd, temperatuur en/of licht, je geest, controle of welke sensor u wilt gebruiken.De voorbeelden zijn
Arduino-programmeerbare LED Infinity spiegel

Arduino-programmeerbare LED Infinity spiegel

Ben je moe van het kijken naar kamer elementen die lijken te hebben van eindige diepte?Misschien moet je overwegen bouwen van uw eigen Arduino-programmeerbare LED Infinity spiegel!Deze optische illusie is een eye-catcher en biedt veel ruimte voor aan
Zet uw real-time klok module in een mini schild. Vervelend draden te elimineren.

Zet uw real-time klok module in een mini schild. Vervelend draden te elimineren.

Een ding dat ik haat terwijl prototyping is al die draden overal!Nou, ik keek mijn I2C Tiny RTC-module, en dacht..."Als ik line-up van de SCL met A5 (dat is waar het voor mijn bibliotheek verbindt) en SDA met A4... het zet de VCC in A3, en GND in A2.
Uploaden van schetsen naar Pro Mini Arduino gebruik Arduino UNO bord (zonder het verwijderen van Atmel Chip)

Uploaden van schetsen naar Pro Mini Arduino gebruik Arduino UNO bord (zonder het verwijderen van Atmel Chip)

Dit schetst een procedure voor het gebruik van de ingebouwde USB van de Arduino UNO de aan Serial(TTL) convertor te schetsen uploaden naar Pro Mini Arduino board zonder de noodzaak voor het verwijderen van de UNO Atmel micro-controller chip. Dit is h
Mini Arduino draagbare EEG - hersenen golf Monitor +

Mini Arduino draagbare EEG - hersenen golf Monitor +

dit is een ander voorbeeld van de veelzijdigheid en de Arduino, een kleine LCD-kleurenscherm en het juiste type van sensoren, zijn wat kan doen.OPMERKING:Dit is een work in progress... Ik zal werken aan verschillende fasen totdat ik voltooi een "draa
Uploaden van de schets naar Pro Mini Arduino met behulp van usbASP

Uploaden van de schets naar Pro Mini Arduino met behulp van usbASP

In deze tutorial tweetalig (Engels en Indonesisch, Indonesisch versie onder scheidingslijn met cursieve stijl), zullen we leren hoe om te uploaden van de schets ("schets" is de term voor programmacode die is geschreven voor Arduino) met Arduino
Hoe maak je een Mini Racing Drone

Hoe maak je een Mini Racing Drone

Ten eerste, dit is mijn eerste instructable dus wees voorzichtig.Nu dat die uit de weg is, 'm I gonna leren u hoe te bouwen van een mini drone racing. Dit is een hobby die snel is gegroeid in populariteit en na het lezen van dit artikel zult u beginn
Hoe maak je een mini USB-stofzuiger

Hoe maak je een mini USB-stofzuiger

Hoe maak je een mini USB-stofzuiger-deel 1Hoe maak je een mini USB-stofzuiger deel 2Stap 1: Een mini USB-stofzuiger moet u!!! In de video's vandaag ga ik om u te tonen het volgende idee van ambachten en zelfgemaakte dingen, eigenlijk hoe maak je een
Hoe maak je een mini 3D Cinema voor Smartphones en Tablets / i3DG

Hoe maak je een mini 3D Cinema voor Smartphones en Tablets / i3DG

Gemakkelijk & leuk idee!!Stap 1: Foto & Video Instructables Wilt u weten hoe maak je een mini 3D bioscoop thuis? Dus deze video voor jou is!Stap 2: Het gaat om je te leren hoe maak je een mini 3D bioscoop met behulp van verkopen-telefoon of tablet