Vis indlæg

Denne sektion tillader dig at se alle indlæg oprettet af dette medlem. Bemærk at du kun kan se indlæg der er oprettet i områder du i øjeblikket har adgang til.


Emner - gsborn

Sider: [1]
1
Arduino & Lign. / Arduino Code-Referenz Håndbog
« Dato: Oktober 29, 2017, 07:54:42 »
Hej, for dem som har interesse så har en tysker lavet en Arduino håndbog, vil jeg kalde det.
Det er interessant og  giver lidt svar på alt man lige ikke kan huske. Godt nok på tysk men det mest er selvforklarende. Eller man copy/past i  google oversætter.
Her er linket så I kan se selv : https://www.arduinoforum.de/referenz.php

hilsen

2
Generel Elektronik / Start af heating pads til mc håndtag
« Dato: November 06, 2016, 10:13:52 »
Hej Jer,
jeg har købt nogle heating pads til mine mc håndtag.
Udover at de bruger 12 v har jeg ikke nogle spec.
Heating pads skal starte/varme når motor kør.
Jeg har målt at batteri har i stillstand 12,75 V - når motor kør 13,5 V
Hvordan kan jeg den Volt forskel bruge til en slags kontakt ?
Til at styre varmegrader vil jeg bruge denne styring se link: http://www.instructables.com/id/Adjustable-Temperature-Controller-For-Heating-Elem/?ALLSTEPS
Måske kunne den også bruges til at starte heating padsene ?

Er der nogle som har en ide - forslag ?

 Med venlig hilsen
Gregor

3
Basis ide gav mig denne udførelse fra siden http://www.instructables.com/id/RGB-RFID-Lamp/
Men da jeg har en dele ATtiny85's vil jeg bruge denne microcontroller.
At gør det nemmer testede jeg alle del først på en Arduino Uno.

Opsætning af RGB-LED strip :
http://www.jerome-bernard.com/blog/2013/01/12/rgb-led-strip-controlled-by-an-arduino/
Han har dog en fejl I hans Fritzing tegning idet den 10kΩ modstand skal være mellem Gate og GND
på MOSFET og ikke Drain og GND.
Modstanden til GND har til opgave at holde Gate pin LOW som er især vigtig ved opstart at Arduino Uno.
En anden modstand som jeg ikke bruger men kan bruges er den fra Gate to Arduino Pin
til at reducere den mulige tilbage strøm og dermed beskytte Arduino Pin.

Jeg testede forskellige MOSFET, efter har læst en del om MOSFET virke og gøre,
set lær video på Youtube endte jeg med den som hedder :  IRL540N.
De kan let ”brændes af” når bytter rundt med Gate – Drain – Source,
man kan bygge sig en simpel N - MOSFET tester som denne her :
http://translate.google.com/translate?hl=el&ie=UTF8&prev=_t&rurl=translate.google.com&sl=auto&tl=en&u=http://www.soloelectronica.net/comprobador_mosfet.htm


Opsætning af RFID 125 khz modul :
http://www.fibidi.com/arduino-rfid-rdm630-module/ det var da lige at gå til.

Testet RGB-Led strip og RFID – Modulet sammen med Arduino Uno og det hele funger som forventet.

Opsætning af RGB – Led strip på en Attiny85 :
Næste skridt var så at porter det over til en ATtiny85,
som efter pin layout kun har 5 brugbare pin 2 pin til  PWM og 3 analog pin.
Der skal der bruges for  RGB – Led strip 3 PWM og til RFID – Modulet 1 pin kun Tx = læse.
Attiny85 skal også have en clock speed på  8 Mhz og til at gør det bliver beskrevet her :
http://www.ediy.com.my/index.php/tutorials/item/49-change-the-tiny-arduino-between-1mhz-and-8mhz



RFID – Modulet skal kun læse = Tx funktion så jeg fandt en bibliotek som Nick Gammon
har lavet : http://www.gammon.com.au/electronics
bibliotek : http://gammon.com.au/Arduino/ReceiveOnlySoftwareSerial.zip

Det næste nemlig af få en ekstra PWM – pin var lidt af en udfordring.
Da jeg ikke er så godt i at programmer og lignede.
Men jeg fandt det hvad jeg skulle bruge her :

http://forum.arduino.cc/index.php?topic=134754.0
https://gist.github.com/dranger003/838bae8aef695b0947c5

Så pin 4 – som billede ovenfor, blev til den tredje PWM – pin.
Så den færdige pin belægning ser ud følgende efter billede ovenfor :

Pin 0 – PWM / Rød
Pin 1 – PWM / Grøn
Pin 4 – PWM / Blå
Pin 3 – 125 khz RFID Tx

Til bedre og nemme kontrol af RGB – Led strip bruger jeg denne biblioteket :
https://github.com/joushx/Arduino-RGB-Tools meget enkel og nem måde at styr RGB – Led strip.


Efter en breadboard opsætning til at se at alt funger, kunne jeg lodde det på en stripbord.


På billede fra venstre til højre :

RFID – antenne /power 12 V , IC 7805 voltage Regulator med to 2 10uf kondensator /
ATtiny85 , Skrueterminale til RGB – Led strip / RFID – Modulet og 3 IRL540 N Mosfet

Det elektronik skema er vedhæftet, ligesom programmet.
På Youtube kan man se en kort video hvordan det funger : https://youtu.be/iCkSboWmttU

Det kunstneriske er lige i gang med, det bliver en kasse med en matteret glasfront.
Hvis det er en elektronisk fejl skriv til mig så jeg kan rette den.

Med venlig hilsen
Gregor




4
Arduino & Lign. / Array og index
« Dato: November 13, 2015, 09:43:42 »
Hej Jer,

Hvordan kan man med en button vælge forskellig indexnummer i en multi array ?
Jeg ved lidt her fra min egen indlæg : http://elektronik-forum.dk/index.php?topic=1148.0
Jeg har følgend fil som jeg ser som en multi array :
Kode:
/**
 * AlignmentStars.h
 * A bunch of stars that can be used during alignment.
 */

#include <avr/pgmspace.h>
#include "StellarduinoUtils.h"

const AlignmentStar alignmentStars[] = {
  {"Sirius",   1.76779309390854, -0.291751177018097, -1.46},
  {"Canopus",  1.67530518796327, -0.919715793748845, -0.72},
  {"Arcturus", 3.73352834160889,  0.334797783763812, -0.04},
  {"Rigel K",  3.83797175293031, -1.06177589858756,  -0.01}}


Ud af disse " AlignmentStars " vil jeg så med en button vælge den Star som er best synligt.

Der for har jeg dette intil nu, hvor tallet i [] er den faste index nummer fra filen:
Kode:
// alignment stars
// Arcturus
SimpleStar alignmentStar1 = 
{
  0.0,
  alignmentStars[2].ra,
  alignmentStars[2].dec,
  0.0,
  0.0,
  alignmentStars[2].name,
  alignmentStars[2].vmag
};
// Rigel K
SimpleStar alignmentStar2 = 
{
  0.0,
  alignmentStars[3].ra,
  alignmentStars[3].dec,
  0.0,
  0.0,
  alignmentStars[3].name,
  alignmentStars[3].vmag
};

Dette " SimpleStar " skal jeg bruge her  :
Kode:
void doAlignment() {
  // set initial time - actual time not necessary, just the difference!
  initialTime = (float)millis() / 86400000.0f * 2.0 * M_PI;

  // ask user to point scope at first star
  lcd.print("Point: ");
  lcd.print(alignmentStar1.name);
  lcd.setCursor(0,1);
  lcd.print("Then press OK");

  // wait for button press
  while(digitalRead(OK_BTN) == LOW);
  alignmentStar1.time = (float)millis() / 86400000.0f * 2.0 * M_PI;
  alignmentStar1.alt = altMultiplier * altEncoder.read();
  alignmentStar1.az = azMultiplier * azEncoder.read();

  lcd.clear();
  lcd.print("Alt set: ");
  lcd.print(alignmentStar1.alt * rad2deg, 3);
  lcd.setCursor(0,1);
  lcd.print("Az set: ");
  lcd.print(alignmentStar1.az * rad2deg, 3);

  delay(2000);

  // ask user to point scope at second star
  lcd.clear();
  lcd.print("Point: ");
  lcd.print(alignmentStar2.name);
  lcd.setCursor(0,1);
  lcd.print("Then press OK");

  // wait for button press
  while(digitalRead(OK_BTN) == LOW);
  alignmentStar2.time = (float)millis() / 86400000.0f * 2.0 * M_PI;
  alignmentStar2.az = azMultiplier * azEncoder.read();
  alignmentStar2.alt = altMultiplier * altEncoder.read();

  lcd.clear();
  lcd.print("Alt set: ");
  lcd.print(alignmentStar2.alt * rad2deg, 3);
  lcd.setCursor(0,1);
  lcd.print("Az set: ");
  lcd.print(alignmentStar2.az * rad2deg, 3);

  delay(2000);
}

I min teori skal jeg have en for- loops og så lidt mere  :)  så jeg kan få skiftet den nu faste index nummer ud med  " i " eller lignde. Men hvordan ?
 Jeg har ledt på nettet her er der for de meste kun almindelige arrays.
" AlignmentStar " og  " SimpleStar " har hver deres  " struct " fil, er vedhæftet.

Programmet er ikke fra mig men fra Casey Fulton

5
Arduino & Lign. / error: expected initializer before
« Dato: November 06, 2015, 19:42:18 »
Hej,
et programm som jeg vil kompiler giver følgende fejl ud :
AlignmentStars.h:16:21: error: expected initializer before ‘alignmentStars’
 const alignmentStar alignmentStars[] PROGMEM = {
                                  ^

del af programmet :
Kode:
typedef struct alignmentStar {
  float ra;
  float dec;
  String name;
  float vmag;
 } 

const alignmentStar alignmentStars[] PROGMEM = {
  {"Sirius",   1.76779309390854, -0.291751177018097, -1.46}
  {"Canopus",  1.67530518796327, -0.919715793748845, -0.72}
  {"Arcturus", 3.73352834160889,  0.334797783763812, -0.04}



Komplet programmet har jeg vedhæftet, det er fra en som hedder Casey Fulton.
Orginal kan findes på Github : https://github.com/caseyfw/Stellarduino
Og der er der flere fejl i som jeg fik rettet, men kan ikke finde ud af den sidste.

Med venlig hilsen

6
Arduino & Lign. / LCD Menu Up / Down
« Dato: November 03, 2015, 09:28:21 »
Jeg er lige igang med at lære, hvordan man kan bruge lcd menu m.m
Nu er jeg stødt på en problem vedr, Up / Down button når jeg har en char array af ting, i eksempel planeter.
Jeg kan få den Up men ikke Down

Up bruger jeg  :

Kode:
void listePlus(){ 
    selPlanet++;
    if ( selPlanet ==7) {
       selPlanet = 0;
    }
  lcd.setCursor(0,0);
  lcd.print(String(Planet[ selPlanet]));
}
Og til Down bruger jeg og her viser den igenting eller kun mærklige tegn:
Kode:
void listeMinus(){ 
   selPlanet--;
    if ( selPlanet ==7) {
       selPlanet = 0;
    }
   lcd.setCursor(0,0);
  lcd.print(String(Planet[ selPlanet]));
}

Hvor laver jeg en forkert tankegang eller fejl ?

Jeg har vedhæftet hele programmet, så kan måske bedere se helheden.

7
Arduino & Lign. / Grundlæggende tilslutninger til Arduino
« Dato: Maj 24, 2015, 20:41:21 »
Her en link til grundlæggende tilslutninger til Arduino. : http://www.pighixxx.com/test/abc/

En samling af de mest populære kredsløbs skemaer for Arduino.

Alle skemaer har fælles stil og bruger fælles symboler og farver til at tilbyde en meget hurtig reference.

Endvidere er her en link til en elektroniske søgemaskine : http://pighixxx.com/else/

Med venlig hilsen Gregor

8
Arduino & Lign. / RFID-RC522
« Dato: April 03, 2015, 18:10:18 »
Hej Jer,
måske er af Jer som kan mig forklare hvorfor min RFID-RC522 ikke vil læse mine kort og alle mine key-chips.

Hvad har jeg :

3 stk RFID-RC522 med hver en kort og en  key-chips. som her på billede


Jeg bruger denne bibliotek : https://github.com/miguelbalboa/rfid
Med videre har jeg en del af disse blå key-chips.
Opsat RFID læseren som nænvt i biblioteket.
Jeg har prøvet med tre forskellige arduino Uno og en Arduino Mega 2560,
men på alt mit isenkram er der kun en kort som jeg kan læse gennem serial output.
Ved alle de andre er der ingenting.

Er der en som har en forklaring ?

Med venlig hilsen
Gregor




9
Projekter / En horisont stabiliseret kamera til motorcykel
« Dato: Marts 23, 2015, 21:10:23 »
En horisont stabiliseret kamera til motorcykel
Jeg faldt over, på hjemmesiden ” instructables.com”, en gyro kamera til motorcykler.
Da jeg selv kører motorcykel og har en kamera som kan bruges til dette formål, ville jeg også bygge sådan en gyro kamera. 

Til projektet bliver der brugt følgende elektroniske dele : 

•   digital servomotor  en som har metaltandhjul i sted for plastik.
•   accelerometeren fra en nunchuck. Den har to funktioner tilt - y akse og roll - x akse.  Isted for en gyro sensor
•   Arduino Uno, til forsøgs opsætning,  i det færdige projekt er det en minimal ”arduino”

Lidt arduino libary, lidt kodning/programmering, til projekt beskrivelse er der vedhæftet de ekstra  libarys for Nunuchucken og selve programmet.  Til denne opsætning vil jeg bruge roll - x aksen af
nunchucken til at stabiliser kameraet i forhold til horisonten.
En servomotor bevæger sig  fra 0 – 180 grader, min servomotor skal bevæge sig  ca. fra 45 grader
til 135 grader,  med 90 grader som horisont. Motorcykelen og køreren har ja sine begrænsninger
hvor meget man lægger sig i sving.

Opsætning af nunchuck på arduino :

•   Nunchucken´s  data / sda til pin4 og  clock/scl til pin5 på arduino uno.
•    Gnd til gnd pin og power til 5v pin på arduino uno.

 Det er en god ide at teste funktionen af nunchucken, der skal hentes wiichuck libary:
http://playground.arduino.cc/Main/WiiChuckClass  og  eksempel sketchen.
Her kan man så gennem ” Serial overvågning ” se data for de forskellige sensorer som nunchucken
har, joystick – trykknap – accelerometeren.

Opsætning af servomotor på arduino : 

•   Servomotor skal bruge en ekstern strømforsyning.
       Gnd fra denne strømforsyning skal til gnd pin på arduino.
        Ellers er det muligt at servomotor ikke funger ordentligt,  den vil kan ”jitter” – ryste. 
•   I dette tilfælde bruger vi digital pin 10 som også er pwm pin - Pulse Width Modulation Pin.

 Billede som er fra siden skal kun være som eksempel http://diydrones.com/profiles/blogs/705844:BlogPost:31713



Vi skal have en libary – Servo libary, http://arduino.cc/en/reference/servo igen en god ide at teste servomotoren med eksempelsketchen.
Til at se om servomotor og nunchucken spiller sammen, fandt jeg på denne siden :
http://www.geekmomprojects.com/wii-nunchuck-controlled-servo-motors/
Her er der to gode programmer og forklaring til temaet nunchcuck og servomotor.
Men med hovedvægt at brugen  x-y-z aksen.
Ved disse programmer skal man bruge den WiiChuck.h som er vedhæftet.
Når man vender nunchuck  accelerometeren om 180 grader så bevæger sig servomotor mod
accelerometeren bevægelse, man skal lidt teste. 
Så fik jeg loddet mig en enkelt arduino sammen efter Nathan Chanatrell,  uden den diode 1n4001.
http://nathan.chantrell.net/20110819/build-your-own-arduino-for-under-10/

 

Her på billede er det hele samlet.
 https://docs.google.com/file/d/0B4J9C_4xHxesakkwTXVnVUptOEk/edit?pli=1

Det grønne er nunchuck accelerometeren. Det hele for pakket i en flot lille plastkasse.
På de næste billeder kan man se en midlertidig montering på motorcyklen for at teste.
https://docs.google.com/file/d/0B4J9C_4xHxesUEdCakZESE5yOHM/edit?pli=1


Konklusion :

Jeg fandt ud af at min kamera ikke ligger i center af servo´en og dermed ikke på horisontlinjen,
men man kan alligevel få en indtryk af opsætningen gennem denne
filmklip :  https://www.youtube.com/watch?v=q3m_NWVbVq4
Det vigtigste som jeg har lært er, at se to gang om opsætning på breadboard har den rigtige strøm,
om alle forbindelser er sat rigtig i hvor de skal være.
Teste de enkelte skridt af projektet, også gennem ”serial overvågning” .
Søg på nettet efter løsninger, hvis man har en fejl/ikke kan komme videre, spørg på arduino forum.
Husk disse mærklige klammer {} – her  for man de fleste fejl.
Programmerne er tilpasset mine behov og opsætning skal evt. tilpasses. 
Ved spørgsmål skriv til gsborn[at]gmail.com

Sider: [1]