Kuvaus/GPS nelikopterin eli kamerakopterin rakennusohje

Versiohistoria

  • 29.8.2017 – Ensimmäinen versio, sisältäen yleistä osion, asiaa akuista, moottoreista ja rungosta sekä suositeltavan flight controllerin ja GPSsän.
  • 7.9.2017 virranjakolevy, radiot, testattiin lento-ohjaimen virranmittausta.

Yleistä

Tätä artikkelia päivitetään sen mukaan miten kuvauskopterin rakentamisen teemapäivillä edetään. Tähän mennessä ollaan pidetty yksi teemäpäivä, jossa käytiin läpi kamerakopterin perusasioita kuten painoa, moottoreita ja akkua.

Kamerakopteria rakentaessa on kiinnitettävä erityisesti huomiota:

  • Kopterin painoon, painoksi suositeltavaa tavoitella alle 1,5kg.n kokonaispainoa.
  • Moottoreiden yhteistyöntövoiman on suositeltavaa olla vähintään kaksi kertaa enemmän kuin kopterin kokonaispaino.
  • Kopterit eivät juuri kestä vettä, lisäsuojauksella voidaan veden kestävyyttä parantaa. Yleisesti vesisateella kopteri otettava heti alas, muuten elektroniikka voi lakata toimimasta ja kopteri tulla alas hallitsemattomasti.

Sisällys

  • Osat (kesken)
  • Akut ja niiden lataus.
  • Moottorit ja runko
  • Ohjauselektroniikka (todo)
  • FPV-Kamerat (todo)
  • Kuvauskamera ja gimbal (todo)

Osat

Lentoohjain eli Flight Controller: http://www.ebay.com/itm/New-FLIP32-F4-OMNIBUS-V2-PRO-Flight-Controller-Board-For-FPV-w-Baro-built-in-OSD/232273874606

GPS/Compassiks: http://www.ebay.com/itm/Ublox-NEO-M8N-GPS-Module-w-Compass-GPS-Bracket-For-APM2-8-APM2-6-Pixhawk-Flight/291942555598

Moottorit: https://hobbyking.com/en_us/turnigy-l2215j-900-brushless-motor-200w.html .. 8-10 tuuman potkurit.

Frame: 450 carbon fiber tai glass fiber frame. Ebäystä tai muualta.

Virranjakolevy: Virranjakolevyä käytetään helpoittamaan kopterin johdotusta. Virranjako levyksi käy monenlaiset virranjako levyt. Kuitenkin 5V regulaattori on virranjakolevyllä hyvä olla. Esim: https://www.banggood.com/Matek-Mini-Power-Hub-Power-Distribution-Board-With-BEC-5V-And-12V-For-FPV-Multicopter-p-1005549.html?rmmds=search 

Radio: FrSky, Flysky tai Turnigy

esim: https://hobbyking.com/en_us/frsky-taranis-q-x7-digital-telemetry-radio-system-2-4ghz-accst-black-standard-version-preorder-only.html

https://hobbyking.com/en_us/turnigy-evolution-fpv-radio-mode-2-white.html

https://www.banggood.com/pt/FlySky-FS-i6-2_4G-6CH-AFHDS-RC-Transmitter-With-FS-iA6B-Receiver-p-983537.html?utm_source=google&utm_medium=cpc_ods&utm_content=jeff&utm_campaign=Squad-ds-trans&gclid=EAIaIQobChMI-de846OT1gIVF5SyCh0yGAF3EAAYASAAEgLZ1PD_BwE

Lisää tulossa myöhemmin.

Akut ja niiden lataus

3S-6S kennoset akut. Akut rakentuvat kennoista ja kennojen määrää ilmaistaan s-kirjaimella. Yksi kenno akussa on 3,7v joka on akun nominaali jännite, täyteen ladattuna kennon jännite on 4,2v, joten 3s akussa nominaali jännite on 11,1v ja täyteen ladattuna se on 4,2v*3 eli 12,6v.

Neljän kennon akut ovat tällöin 3.7*4 = 14,8v ja täyteen ladattuna 4.2*4 = 16,8v.

Akkuja käytettäessä niiden kennojännite ei saa tippua alle 3,3v kuormituksen aikana. Ilman kuormitusta akku on lopussa kun sen jännite on nominaalijännitteen luokkaa eli 3,7v. Kolmikennosella akulla tämä tarkoittaa että kuormituksen aikana jos akku menee alle 10v, niin lentäminen on lopetettava.

Kuitenkin kannattaa opetella se miten paljon akun jännite laskee kuormituksen aikana, eli verrata kuormitus jännitettä kuormittamattomaan jännitteeseen. Eli tuo kopteri maahan ja katso mikä sen standby-jännite on.

Akkujen lataus tehdään siihen tarkoitetuilla LiPo-lataureilla. LiPo-akkuja ei saa jättää lataukseen vahtimatta, ne voivat syttyä tuleen. Akkuja ladattaessa tulee itse valita latausvirta. Latausvirtana käytetään yleensä 1C, joka tarkoittaa akun kapasiteettia. Esim 5000mAh akkua tällöin ladattaisiin 5A latausvirralla. Akkua voidaan kuitenkin ladata myös muilla latausvirroilla. Suuret latausvirrat voivat pienentää akun elinikää. Joten on suositeltavaa käyttää pieniä latausvirtoja tai maksimissaan 1C virtaa.

Edullinen laturi: http://www.ebay.com/itm/iMAX-B6-Lipo-NiMh-Li-ion-Ni-Cd-RC-Battery-Balance-Digital-Charger-Discharger-/381282390728?epid=510347785&hash=item58c63392c8:g:hwMAAOSwnipWW~el

Akuissa muuta huomioitavaa se, että kylmällä kelillä akusta ei välttämättä lähde täyttä tehoa ja kopteri voi käyttäytyä erillä tavalla.

Moottorit ja runko

Termit:

Stator = moottorin osa joka ei pyöri.

Kv = moottorin kierrosmäärä suhteessa jännitteeseen, esim 900 rpm/v = 1v syöttöjännitteellä moottori pyörii 900 kierrosta minuutissa olettaen, että virta riittää.

Moottoreissa kiinnitettävä huomiota erityisesti jännitteeseen, kv-arvoon ja stattorin kokoon. Mitä suurempi potkuri sitä pienempi kv-arvo ja sitä suurempi staattorin koko.

Potkureissa huomioitava rungon koko, että potkurit mahtuvat siihen hyvin. Käytännössä 8-9 tuuman potkurit vaativat 450mm rungon. Huomioitavaa on, että potkurin ja rungon väliin jää hieman tilaa, ainakin n. 1cm, eikä potkurit osu toisiinsa.

Rungoissa halkaisija ilmoitetaan millimetreinä varren päästä vastakkaisen varren päähän. 450mm rungossa varren pituus on n. 17cm, täten jos siihen laittaa 9″-potkurin joka on halkaisijaltaan 22,86cm, niin potkurin lavan pituus on suurinpiirtein 22,86/2 = 11,43cm, eli tilaa runkoon jää 17cm-11,43 = 5,57cm. Kyseinen etäisyys vaihtelee riippuen rungosta.

Alla olevan taulukon perusteella 9″-potkurille tulisi valita n. 900kv moottori, jonka staattorin koko on vähintään 2214.

Approx diameter Prop Size Recommended stator size Lowest kv recommended Highest kv recommended
150mm & smaller 3”

1306

3000

4000

150-250mm 4”

1806

2600

2800

190-220mm 5” 2204-2206

2300

2600

220-270mm 6” 2204-2208 1960 2300
350mm 7” 2206-2210

1450

1600

450mm 8”

2212

1000

1200

450mm & larger 9” 2214-2216

900

1000

Tarkemmat tiedot moottoreista löytyy: https://quadquestions.com/blog/2017/02/22/choose-right-size-motors-drone/

Lisätietoja:

http://www.rcdronegood.com/formula-quadcopter-weight-calculator-thrust/

 

Tervetuloa seuraaville teemapäiville, jotka pidetään syyskuussa. Teemapäivistä ilmoitetaan facebook sivullamme.

Jatkuu.. syyskuun aikana.

Kurssi: Sähkön alkeet ja yleismittarin käyttö

Tänään oli ensimmäinen elektroniikan alkeet kurssi. Kurssilla ei ollut osallistujia, mutta pidin kurssin silti, kun sen nauhoitettua sai ja valmistelut oli kumminkin tehty.

Kurssilla käydään läpi jännite, virta resistanssi, teho ja niiden perus laskentakaavat sekä mittaillaan yleismittarilla ja koitetaan laskea vastuksen arvoja.

Kalvot:

Arduinon perusteet, osa #3: Servot ja moottorit

Arduinon perusteet kurssin kolmas osa. Kurssilla käsitellään servoja, moottoreita sekä askelmoottoreita. Esimerkit servon ja sähkömoottorin ohjaukseen.

Youtube

Kalvot

Koodit

Servo esimerkki löytyy Arduino IDE:n esimerkeistä.

 

#define LEFT_MOTOR_PWM 3
#define LEFT_MOTOR_1 12
#define LEFT_MOTOR_2 9

void setup() {
pinMode(LEFT_MOTOR_PWM, OUTPUT);
pinMode(LEFT_MOTOR_1, OUTPUT);
pinMode(LEFT_MOTOR_2, OUTPUT);
}

void loop() {

leftStop();
delay(2000);
leftForward(255);
delay(2000);
leftBackward(255);
delay(2000);
}
void leftForward(byte speed)
{
analogWrite(LEFT_MOTOR_PWM,speed);
digitalWrite(LEFT_MOTOR_1,HIGH);
digitalWrite(LEFT_MOTOR_2,LOW);
}
void leftBackward(byte speed)
{
analogWrite(LEFT_MOTOR_PWM,speed);
digitalWrite(LEFT_MOTOR_1,LOW);
digitalWrite(LEFT_MOTOR_2,HIGH);
}
void leftStop()
{
analogWrite(LEFT_MOTOR_PWM,255);
digitalWrite(LEFT_MOTOR_1,HIGH);
digitalWrite(LEFT_MOTOR_2,HIGH);
}

 

Kurssi: Arduinon perusteet, osa #2: Ohjelmointi

Arduinon perusteet kurssin toinen osa. Kurssilla ohjelmoinnin alkeita Arduinoon liittyen. Käydään läpi mmm muuttujia, ehtoja, toistolauseita, funktioita ja ohjelmamuistin käyttöä.

 

 

 

Koodit:

void setup() {
Serial.begin(9600);
}

void loop() {

int luku=0;
if (Serial.available())
{
luku = Serial.parseInt();
if ( luku > 10) {
Serial.println(”Luku on suurempi kuin 10”);
}
else {
Serial.println(”Luku on pienempi kuin 11”);
}
}
delay(1000);
}

For loop 1

 

void setup() {
Serial.begin(9600);
}
int i;
void loop() {
for ( i=0; i<10; i+=1 ) {
Serial.println( i );
}

delay(1000);
}

For loop 2

 

void setup() {
Serial.begin(9600);
}

void loop() {
char Str1[15] = ”Arduino”;

for (int i;i<15;i++) {
Serial.print(Str1[i]);
}

Serial.println(Str1);

delay(1000);
}

Switch+funktio

 

void setup() {
Serial.begin(9600);
}

void loop() {

Serial.println(laske(2,7,0));
delay(1000);
Serial.println(laske(2,7,1));
delay(1000);
Serial.println(laske(2,7,2));
delay(1000);
Serial.println(laske(2,7,3));
Serial.println(”Laskut laskettu”);
delay(10000);
}

int laske(int a, int b, byte tyyppi) {
switch (tyyppi) {
case 0: return a+b;
case 1: return a-b;
case 2: return a*b;
case 3: return a/b;
}
}

 

 

Kurssi: Arduinon perusteet, Osa #1: Arduino-ympäristö [YouTube]

Tänään oli ensimmäinen osa pidemmästä Arduinon perusteet kurssista. Alta löydät videon nauhoitteen, kalvot ja kurssilla olleet ohjelma koodit. Seuraava osa kahden viikon kuluttua. Kiitoksia osallistumisesta!

 

 

Kalvot

 

Ohjelmakoodit

Blink: (Löytyy arduinon esimerkeistä Arduino IDEssä)

 

Liikennevalot:

int greenPin = 2;
int yellowPin = 3;
int redPin = 4;

void setup()
{
Serial.begin(9600);
Serial.println(”Setup()”);
pinMode(greenPin, OUTPUT);
pinMode(yellowPin, OUTPUT);
pinMode(redPin, OUTPUT);

digitalWrite(greenPin,LOW);
digitalWrite(yellowPin,LOW);
digitalWrite(redPin,LOW);
}
int globaali=0;
void loop()
{
globaali++;
int paikallinen=0;
paikallinen++;

if (Serial.available())
{
globaali = Serial.parseInt();
paikallinen = Serial.parseInt();

while(Serial.available()) Serial.read();
}

Serial.println(”Loop()”);
Serial.print(”Kierros: ”);
Serial.println(globaali);

Serial.print(”Paikallinen: ”);
Serial.println(paikallinen);

digitalWrite(redPin, HIGH);
delay(1000);
digitalWrite(yellowPin, HIGH);
delay(500);
digitalWrite(redPin, LOW);
delay(1000);
digitalWrite(yellowPin, LOW);
digitalWrite(greenPin, HIGH);
delay(1000);
digitalWrite(greenPin, LOW);

}

 

 

 

Akun ja laturin päivitys rikkaimuriin

DSC_0300

 

Tuli tarpeelliseksi vaihtaa Electrolux rapidoon akku ja latauspiiri. Uusi latauspiiri on perus 5V in, 4,2V out, jolla imuria voi ladata vaikka autossa.

Tässä selitetty miten sen vaihto käytännössä tapahtui.

Kyseinen rikkaimuri on 3,6V, ja sen akku koostuu 3×1,2V paristoista. Tilalle laittelin 18650 3,7V pariston + kyseiselle paristolle sopivan latauspiirin. Latauspiirissä on microusb-liitäntä, mutta koska minulla oli valmiina imurissa olevaan liittimeen sopiva uros DC Barrel Jack -kaapeli, jonka toisessa päässä on uros usb, niin käytän sitä. Tällöin ei tarvitse tehdä myöskään uutta reikää microusb liittimelle.

Osat:

DC Barrel Jack -kaapeli: http://www.ebay.com/itm/141777496700

Latauspiiri (vastaava): http://www.ebay.com/itm/281489251607

18650 paristo (vastaava): http://www.ebay.com/itm/161946381832

18650 kotelo (vastaava): http://www.ebay.com/itm/252091236855

Electrolux rapido: https://www.tokmanni.fi/siivouslaitteet/electrolux-rikkaimuri-rapido-zb5103/5999554158655/dp

 

 

DSC_0280
Takaosa avattuna.
DSC_0281
Ainoat erikoisruuvit olivat DC in -liittimessä.
DSC_0282
Paristot ja niiden kiinnitys.
DSC_0283
Paristot irroitettu, kiinnitysläpäkkeet jätetty paikalleen.
DSC_0284
Elektroniikka.
DSC_0285
Piiri lähti helposti irti. Tarkoitus käyttää ainakin samaa kytkintä.
DSC_0286
Akku irroitettu. Tarkoitus kytkeä samoihin johtoihin uusi akku. Eroa vain n. 0,5 volttia niin pitäs olla ok suurimmalta osin (paitsi lataus).
DSC_0287
Testausta uudella akulla. Toimi ok.
DSC_0289
Latauspiiri kytketty uuteen akkuun.
DSC_0291
Latauspiirin testaus. Valot ok.
DSC_0292
Elektroniikka valmiina, juotettu latauspiiriin DC naaras liittimen johdot.
DSC_0293
Teipattu latauspiiri imurin reunaa vasten. Kohta katsottu niin, että ledit näkee läpi toiselta puolelta. Jos teippi ei riitä, niin kuumaliimata myöhemmin.
DSC_0294
Ledin näkyvyys toiselta puolelta.
DSC_0296
Akkukotelonkin laittelin teipillä. Jos ei pysy niin liimailla myöhemmin.
DSC_0297
Seuraavaksi koppa takaisin kiinni.
DSC_0298
Koppa kiinnitetty ja merkitty sisääntuloksi 5V.
DSC_0299
Lisätty latauksen ohjeistus.
DSC_0300
Valmiina imurointiin 🙂

Testi uudella akulla.

Simppeli etäohjattu robo, video feedillä (ESP8266)

Robo on rakennettu yhdistäen ESP8266 + Motor Driverin + Robot chassiksen ja Android puhelimen (camera feed). Tässä testissä on käytössä tarpeettomasti kaksi eri wifi yhteyttä: robolle ja camera feedille. Kameran wifi toimii paremmin, robon joskus lagaa. Roboa ohjataan nuoli näppäimillä Angularilla tehdyn softan avulla, se lähettää JSON-requesteja robolle, jossa pyörii web-serveri. JON-requestien mukana tulee robolta myös sen antureiden tietoa. Tässä tapauksessa vain valo-anturin tiedot, mutta helpolla saisi muutakin.