Arduino + MAX7219 + Led matrica 8×8

Seniai jau darytas projektas tik niekaip negalėjau (nesugebėjau) aprašyti jo. Kilo idėja Arduino pajungti prie šviesos diodų matricos panaudojant MAX7219 Led valdiklį (draiverį). Kas įdomausia – į vieną eilę 3 valdymo laidais galima pajungti iki 8 tokių modulių. Gaunama 8×64 taškų eilutė.

Pati schema elementari, plokštė gavosi 6cmx6cm

programos kodas:

#include „LedControl.h“
int devices = 3; //moduliu skaicius
LedControl lc = LedControl (10, 12, 11, devices);

unsigned long delaytime = 50;
int row;
int col;
int address;

void setup (){
	for (int address = 0; address < devices; address++){
		lc.shutdown (address, false);
		lc.setIntensity (address, 12);
		lc.clearDisplay (address);}
	}

void clr_disp (int dev){
	delay (1000);
	for (address = 0; address < dev; address++){
		lc.clearDisplay (address);}
	}

void fill_pixel (int dev){
	for (row = 0; row < 8; row++){
		for (address = 0; address < dev; address++){
			for (col = 0; col < 8; col++){
				delay (delaytime);
				lc.setLed (address, row, col, true);}
			}
		}
	}

void fill_col_right (int dev, int b){
	for (address = 0; address < dev; address++){
		for (col = 0; col < 8; col++){
			delay (delaytime);
			lc.setColumn (address, col, b);}
		}
	}

void fill_col_left (int dev, int b){
	for (address = dev-1; address >= 0; address--){
		for (col = 7; col >= 0; col--;){
			delay (delaytime);
			lc.setColumn (address, col, b);}
		}
	}

void fill_row_down (int dev, int b){
	for (row = 0; row < 8; row++){
		for (address = 0; address < dev; address++){
			lc.setRow (address, row, b);}
			delay (delaytime);
		}
	}

void fill_row_up (int dev, int b){
	for (row = 7; row >= 0; row--;){
		for( address = 0; address < dev; address++){
			lc.setRow (address, row, b);}
			delay (delaytime);
		}
	}

void loop (){
	clr_disp (devices);
	fill_col_right (devices, 255);
	fill_row_down (devices, 0);
	fill_row_up (devices, 255);
	fill_col_left (devices, 0);
	}

 

ir gabalėlis youtubo

Pirmieji „žingsniai“

Pirmieji "žingsniai", na ne pirmieji, testuota buvo ir anksčiau ir klaidos taisytos, bet dabar jau važiuoja be problemų (kol kas)

Robotuko struktūrinė schema Ver 2

Pradėjus testuoti realius važiavimus išlindo pirmieji povandeniniai akmenys 🙂 Juk kitaip ir negali būti. Robotukas važiavo max. 2 sekundes, o paskui "užlinkdavo" kontroleris. Bėdos – kolektoriniai varikliukai. Juose stovi šepetėliai, kurie stipriai kibirkščiuoja, sukelia elektromagnetinius trukdžius ir visos tos "šiukšlės" persiduodavo kontroleriui, aišku jis to neištverdavo ir pasakydavo – "Nea, aš taip nežaidžiu". Prie viso to dar 5V reguliatorius ant kontrolerio nesugebėjo išspausti reikiamo galimgumo varikliukų užmaitinimui, todėl sprendimas – papildomas blokas su 5V reguliatoriumi ir kondensatorių (C) filtrais kiekvienam varikliukui.

robotuku strukturine schema ver 2

Filtrų bloko schema:

filtru blokas

Spausdintinė plokštė:

istrasuota plokste

o čia jei kas užsimanys DipTrace visi failiukai

filtru ir maitinimo blokas

va tokia "grožybė" gavosi, radiatorių reikės dėti didesnį – vis tik šyla jis.

Ar žinote, kad…

Kas tie robotai? Iš kur jie atsirado? Su kokiomis problemomis susidūrė robotų kūrėjai? XXI amžiuje apie šiuos technologinius kūrinius kalbama vis dažniau, keliais įdomiais faktais nusprendėme pasidalinti ir mes.

Ar žinote, kad…

„Elektro“ — pirmasis pasaulyje humanoidas, debiutavęs dar 1939-aisiais. Beveik septynių pėdų aukščio mašina vaikščiojo ir kalbėjo – iš viso robotas galėjo pasakyti daugiau nei 700 žodžių.

1495 metais Leonardo Da Vinci  parengė planą, nurodžiusį, kaip reikia sukurti humanoidą, o inžinierius Markas Rosheimas sukūrė miniatiurinę mašinos versiją, kurią naudojo NASA.

1981 metais pirmąjį kartą pastebėta, kad robotai kelia pavojų. Tada roboto ranka nužudė Japonijos gamyklos darbininką.

Šiuo metu JAV kariuomenė naudoja daugiau nei 400 robotų, kurie sėkmingai atlieka įvairaus pobūdžio užduotis, kurias žmogui atlikti sunku ir pavojinga – išminuoja bombas, atlieka įvairius darbus pavojingose karinėse zonose arapleistose gamyklose.

Mažasis aš (ang. Mini Me) — tai mikroskopinis robotas, kurį sukurti ryžosi Australai. Šio roboto paskirtis atlikti svarbią medicininę misiją – paciento organizme jis turės atlikti biopsiją.

Robotikos ekspertas Henrikas Christensenas prognozuoja, kad ateityje žmonės galės intymiai bendrauti su robotais. Jeigu galvojate, kad svetimauti bus paprasčiau, klystate. Hansas Moravecas, „Carnegie Mellon“ robotikos instituto įkūrėjas teigia, kad robotai turės jausmus ir bendraus su į save panašiais kūriniais.

NASA dirba įvairūs robotai, pavyzdžiui, robotas kodiniu pavadinimu „TKS Canadarm2“ gali pakelti ir kontroliuoti labai sunkius objektus, pavyzdžiui, palydovus.