Faiga fa'alotoifale tuto'atasi aoina fa'amaumauga

Na faʻatau e le kamupani NEKST-M pou mataʻituina, gaosia i totonu o le atunuʻu e Next Technologies. Ina ia mautinoa le vaʻaia o le faʻaogaina o iunite pamu,
fa'ailo afi ma le saogalemu, i ai le voltage i le amataga, vevela o le potu, tulaga vai fa'afuase'i. O le fatu o NEKST-M o le ATMEGA 1280 ma o lenei mea moni e faʻamalosia i tulaga o le avanoa e fatuina ai lau lava pusa mo manaoga faʻapitoa.

O le galuega na fa'atulaga e fausia ai se faiga tuto'atasi tuto'atasi mo mana'oga fa'apitoa i se taimi pu'upu'u ma i se tau maualalo. Ole fa'avae ole microcontroller. Atina'e, gaosiga, na faia e le aufaigaluega lava latou.

E tatau ona galue le faiga e aunoa ma le faʻalagolago i luga o fesoʻotaiga feaveaʻi, servers, Initaneti ma le laisene laisene mo le faʻaogaina o alalaupapa alaleo, aua le faʻaogaina komepiuta i le faʻaogaina o le pulega ma le pulega poʻo, i le tele, faʻaaoga i lea taimi ma lea taimi komepiuta, e aunoa ma le avanoa i mea mo se taimi umi (6-9 masina). O le fesoʻotaʻiga fesoʻotaʻiga o loʻo i ai se fausaga radial. E aoina faʻamatalaga i le tasi taimi ona tuʻuina atu lea mo le faʻagaioiga e ala i fesoʻotaʻiga masani poʻo se kopi faigata.

E tatau i le polokalama ona tuʻuina atu:

  • mata'ituina le fa'agaioiga o vaega o pamu
  • faiga fa'atekonolosi
  • puipuiga mai i'uga o fa'alavelave fa'afuase'i
  • fa'ailoga fa'afuase'i
  • fa'atatauga taimi faigaluega
  • fuafua le aofa'i o le eletise e fa'aaoga
  • pulea le vevela o meafaigaluega
  • saogalemu ma fa'ailo afi
  • fa'amaumauga mamao fa'avaitaimi
  • e le iloa mana'oga i le lumana'i

Tulaga faigaluega:

  • vaega fa'asalalau 1 sq. km.
  • va'aia sa'o i le va o mea
  • vevela mai le +50 i le -50C
  • susu e oo atu ile 100%
  • fa'ato'aga fa'aolaola (milo, siama fa'aitiitia sulfate)
  • vibration, leai se toe, o masini o vasega 1-2 e tusa ai ma GOST ISO 10816-1-97
  • siosiomaga electromagnetic - fesuiaiga o afi eletise ma KT 6053 faʻafesoʻotaʻi, RVS-DN masini amata vaivai, SIEMENS MICROMASTER PID masini pulea, radiation i le ISM ma le GSM laina e tusa ai ma manaoga mo nei masini, uelo arc tusi lesona i luga o le nofoaga
  • tele eletise feso'ota'iga, fa'alavelave pupuu i le sapalai o le eletise, uila tele, fa'aletonu vaega pe a motu le uaea i luga ole ulu ile 6-10 kV feso'ota'iga tufatufa.

E ui lava i ia tulaga faigata, o le faʻatinoga e faigofie tele pe a foia le faʻafitauli i lea laasaga ma lea laasaga.

I le amanaia o mea uma, o le laupapa "Arduino Nano 3.0" na avea ma "faiʻai" o le fuafuaga. O le laupapa robotdyn o loʻo i ai se ATMEGA 328 pule, o le 3,3V voltage stabilizer talafeagai mo
i le taimi nei 800 mA ma liliu i CH340G UART-USB.

Muamua, o fata o itula faigaluega na faia e pei o fa'amatalaga aupito sili ona lata mai. Na fa'aogaina mita fale gaosimea na fa'apipi'iina i luga o PICs ma le fa'aogaina o le eletise e leai se transformerless na le manuia ona o si'i eletise i totonu o le tausaga o le fa'agaioiga. Na'o i latou e feso'ota'i fa'aaoga sapalai eletise 5V fa'afale na tumau pea. Ina ia faʻavaveina le faʻapipiʻiina ma le faʻaogaina o le fesoʻotaʻiga, o se faʻailoga e uiga i le tulaga o iunite e ave mai faʻamau o masini fesuiaʻi, i.e. resitalaina o le i ai o le 1st phase voltage faʻatasi ma le tolu-vaega eletise o le 380V. Ina ia faʻamaopoopoina ma le pule, e faʻaogaina se fesoʻotaʻiga vavalalata ma le 220V winding poʻo se optocoupler e aofia ai se LED ma se GL5516 photoresistor poʻo se PC817 optocoupler e faʻaaogaina. Sa tofotofoina uma filifiliga. O le LED e faʻamalosia e se voltage faʻasaʻo ma le faʻatapulaʻaina o loʻo i ai nei e faʻaaoga ai le lua SVV22 capacitors fuafuaina mo le voltage o le 630V fesoʻotaʻi i le faasologa mo le saogalemu i le taimi o suʻega faʻafuaseʻi o taʻaloga ma se megohmmeter.
Faitauina o taimi fa'agaioiga e fa'aaoga ai le ST7735S LCD mata, fa'amatalaga fa'amatalaga taimi moni e ala i leitio fa'aaoga le E01-ML01DP05 module i le taimi ole 2,4 MHz. O lenei masini o loʻo i ai le nRF24L01+ pu ma le RFX2401C faʻasalalau / mauaina faʻamalosi,
malosiaga fa'aola e o'o atu ile 100 mW. Antenna Helical ua fuafuaina mo le laina mana'omia ile calculator i luga ole laiga saite. O le filifiliga o le ituaiga antenna e faʻamoemoeina e ala i le le aofia ai o le mauaina o galu faʻaalia taʻitasi mai fausaga uʻamea siʻosiʻomaga. O vaega o le antenna e lolomi i luga o se lomitusi 3D. O le tulaga o loʻo i ai nei o faʻamaumauga o loʻo teuina i le EEPROM o le pule lava ia ma toe faʻafoʻisia pe a tupu se faʻalavelave faʻafuaseʻi. Taimi vaeluaga mo le faitauina o loʻo tuʻuina atu e le RTC chip DS3231 i le tulaga o se module faʻatasi ai ma se maa faʻamau. O le faʻaogaina o le eletise e faʻaaogaina 3 modules, o le fatu fatu moni 220 / 5V HLK-PM01 600mA, o se liliu mai le 1-5V i le 5V FA-553 и 03962A - pule maa ma fuafuaga puipuiga mai le ta'avale pu'upu'u, fa'asili ma le fa'asili. O vaega uma na faʻatauina ile Aliexpress website.

Laupapa falaoaFaiga fa'alotoifale tuto'atasi aoina fa'amaumauga
4-auala fata. O lo'o iai LC filiga i mea fa'aoga e puipui ai mai fa'alavelave i luga o se laina feso'ota'iga lua. O faʻamatalaga i le tulaga o mea faʻatonutonu e faitau faʻatasi i le sekone ma faʻaalia i lanu i luga o le LCD. Faitauga e fa'afouina ma fa'amaumau i le manatua e le fa'afefe i le 1 sekone. 36 sekone o le 36/1 o le itula, o le faatulagaga lea e manaʻomia ai faʻamatalaga. Ta'i 100 sekone uma. fa'amatalaga e tu'uina atu e uiga i le numera o sekone o fa'agaioiga mo iunite ta'itasi. O le manatua o le EEPROM e fa'atapula'aina le aofa'i o ta'amilosaga tusi-tipe, e tusa ai ma le gaosiga, 12 taimi. O le filifiliga sili ona leaga o le taimi e tasi le sela o loʻo faʻafouina pea. O le voluma o le fata muamua e 100000 bytes, ose numera umi lea, 1 fata, o le aofa'i o 4 paita o lo'o nofoia e le tasi fa'amaumauga. O le umi o le manatua o le chip e 4 bytes; a maeʻa faʻamaumauga 16 o faʻailoga e 1024, o le a toe amata le pueina. I totonu o le faletusi EEPROM, e le tusia le auala EEPROM.put, afai o le tau o le sela ma faʻamatalaga o loʻo tusia e fetaui, o le a leai se faʻaleagaina o sela. O le iʻuga, o le faʻamautinoaina o le faʻaogaina o le taimi o le a sili atu i le 64 tausaga. O le taimi e mafai ai ae le fa'amaonia galuega e mafai ona umi atu.

Ata fa'ata'amilosagaFaiga fa'alotoifale tuto'atasi aoina fa'amaumauga
Polokalama i Arduino IDE//12 paita (328%)

#fa'aofia // Faletusi ata ata
#fa'aofia // Faletusi fa'apitoa mo meafaigaluega
#fa'aofia
#fa'aofia
# aofia ai
#fa'aofia
#fa'aofia
Leitio RF24(9, 10); // mea leitio mo le galue ma le faletusi RF24,
// ma pine numera nRF24L01+ (CE, CSN)
#fa'aofia
DS3231 rtc(SDA, SCL);
Taimi t;

//#define TFT_CS 10
#fa'amatala TFT_CS 8
#define TFT_RST -1 // e mafai foi ona e faʻafesoʻotaʻi lenei mea i le Arduino reset
// i le fea tulaga, seti lenei #define pine i le -1!
//#define TFT_DC 9 // DC=RS=A0 - filifiliga filifiliga mo le filifilia o se faʻatonuga poʻo se resitala faʻamaumauga.
#fa'amatala TFT_DC 3

Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);

// Filifiliga 2: faʻaaoga soʻo se pine ae faʻagesegese teisi!
#define TFT_SCLK 13 // seti ia mea e fai ma pine e te mana'o ai!
#define TFT_MOSI 11 // seti ia mea e fai ma pine e te manaʻo ai!
//Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_MOSI, TFT_SCLK, TFT_RST);
#fa'aofia

suiga paita = 52;
byte pinState;
pamu umi e le'i sainia[4];// fa'asologa fa'atasi ma tau fa'atusa e 4 sekone
opeopea m = 3600.0;
tuatusi int e le'i sainia = 0;
int rc; // fesuiaiga mo faʻatau
sumprim umi e le'i sainia = 0;
le saini umi sumsec = 0;
paita i = 0;
paita k = 34;
le saini int z = 0;
paita b = B00000001;
byte pumrcounter[4]; // fa'asologa mo le teuina o mea faitino, 1 - off, 0 - on.
int amata = 0; //

faʻaleaogaina le seti () {

rtc.begin();
radio.begin(); // Amata galuega nRF24L01+
radio.setChannel(120); // alalaupapa fa'amatalaga (mai le 0 i le 127).
leitio.setDataRate(RF24_250KBPS); // fa'asologa o fa'amatalaga (RF24_250KBPS, RF24_1MBPS, RF24_2MBPS).
leitio.setPALevel(RF24_PA_MAX); // eletise eletise (RF24_PA_MIN=-18dBm, RF24_PA_LOW=-12dBm,
// RF24_PA_HIGH=-6dBm, RF24_PA_MAX=0dBm)
leitio.openWritingPipe(0xAABBCCDD11LL); // Tatala se paipa ma se faʻamatalaga mo faʻamatalaga faʻamatalaga

// Ina ia seti le taimi, faʻamalo laina manaʻomia
//rtc.setDOW(1); // Aso o le vaiaso
//rtc.setTime(21, 20, 0); // Taimi, i le faatulagaga 24 itula.
//rtc.setDate(29, 10, 2018); // Aso, Oketopa 29, 2018

tft.initR(INITR_BLACKTAB); // amataina se atigi ST7735S, laupepa uliuli
// Fa'aoga lenei fa'ailoga (uncomment) pe afai o lo'o e fa'aaogaina se 1.44" TFT
//tft.initR(INITR_144GREENTAB); // amataina se atigipusa ST7735S, RED rcB tab
tft.setTextWrap(sese); // Fa'ataga tusitusiga e alu ese mai le pito taumatau
tft.setRotation( 2 ); // mo PCB BLACK ma RED tft.setRotation(0) pe leai.
tft.fillScreen(ST7735_BLACK); // mata manino

DDRD = DDRD | B00000000;
PORTD = PORTD | B11110000; // o loʻo galue faʻamalosi polokalame, maualuga maualuga -
// mea fa'atonu "le galue", "4" ua tusia i 1 sinia sinia uma D, e leai se faitau e tupu.

mo (rc = 0; rc <4; rc++)
{
tft.setCursor ( 3, rc * 10 + shift ); // fa'aalia numera tulaga o mea e pulea
tft.print(rc + 1);
}

tft.setCursor(12, 0); // gaosia 3 laina o tusitusiga
tft.println("AITAINA & FAIA"); // ia viia oe oe pele
tft.setCursor(24, 10); // po o le puletaofia leaga
tft.print("AITAINA MM");
tft.setCursor(28, 20);
tft.print("BUILD-ER DD");

// toe fa'aleleia o fa'amaumauga ////////////////////////////////////////// //////////

mo (z = 0; z <1023; z += 16) {/ // Toe fa'asolosolo i sela uma o le alamanuia
//ma tusi i se fa'asologa o fesuiaiga pamu 4, 4 paita mo fata taitasi, aua
// le fa'ailoga umi fesuiaiga. E 4 fa'atau, tasi fa'amaumauga o 4 uma e 16 paita.
EEPROM.get(z, pamu[0]); // o lea, e aunoa ma le mo le matasele, itiiti le voluma
EEPROM.get(z+4, pamu[1]);
EEPROM.get(z+8, pamu[2]);
EEPROM.get(z+12, pamu[3]);

// tu'uina atu se isi tau fou mo le aofa'i o fa'ailoga e 4
sumprim = (pamu [0] + pamu [1] + pamu [2] + pamu [3]);

// faʻatusatusa le tau fou o le aofaʻi o 4 faʻatau i le sumprim fesuiaiga ma le tau muamua i le fesuiaiga
// sumsec ma afai o le aofaʻi muamua e itiiti ifo pe tutusa ma le aofaʻi fou, o le mea fou sili atu pe tutusa e tuʻuina atu
// sumsec tau.

afai ( sumsec <= sumprim ) {
sumsec = sumprim; //

//ma o le tau o loʻo i ai nei z ua tuʻuina atu i le fesuiaiga o tuatusi, z o le tuatusi o le amataga o se poloka 16-byte o 4 tau.
// fa'amaufa'ailoga fa'amauina i le taimi e tasi (talu mai le palotaina o se taulaga, o lo'o tusia uma i le taimi e tasi le 8 bits,
// e aofia ai a matou 4 bits maualuga manaʻomia o le taulaga D).
tuatusi = z;
}
}

// toe faʻafeiloaʻi le eeprom memory i le tuatusi o le amataga o se poloka o 16 paita o 4 faʻamaumau tau faʻatau
// mulimuli, i.e. tau a'o le'i tapuni pe toe fa'afou ona o le malulu. Faamauina o tala fou
// faʻatusatusa tau i totonu o se faʻasologa o pamu fesuiaiga e 4.

EEPROM.get(tuatusi, pamu[0]);
EEPROM.get(tuatusi + 4, pamu[1]);
EEPROM.get(tuatusi + 8, pamu[2]);
EEPROM.get(tuatusi + 12, pamu[3]);

tuatusi += 16; //faʻateleina le tuatusi mo le tusiaina o le isi poloka e aunoa ma le faʻaaogaina o faʻamaumauga o faʻamaumauga mulimuli

//fa'ai'uga o le toe fa'aleleia o fa'amaumauga/////////////////////////////////////// ////////////////

attachInterrupt(0, faitau, RISING); // pine D2, fa'ataga fa'alavelave, sau i sekone ta'itasi
// pulus mai le RTC DS3231 mai le SQW galuega

wdt_enable(WDTO_8S); // amata le timer leoleo, toe faʻafou le pule i le tulaga o le malulu, taimi,
// lea e te manaʻomia e tuʻuina atu ai le timer reset command wdt_reset (ma aloese mai le toe faʻafouina i le taimi masani - 8 sec.
// mo suʻega e le fautuaina e seti le tau i lalo ifo o le 8 sekone. I lenei tulaga, e sili atu le toe setiina o le taimi.
// fa'afefe, ma e tupu i sekone ta'itasi.

}

faaleaogaina matasele () {
// taamilosaga gaogao, iinei o le ai ai le puleaina o le faʻaogaina o le faʻaogaina o le afi eletise
}

numera gaogao() {

tft.setTextColor(ST7735_WHITE); // seti le lanu vaitusi
t = rtc.getTime(); // faitau taimi
tft.setCursor(5, 120); // fa'atulagaina le tulaga fa'ailo
tft.fillRect(5, 120, 50, 7, ST7735_BLACK); // fa'amama le taimi e fa'atino ai vaega
tft.print(rtc.getTimeStr()); // faitau tusi uati

wdt_reset(); // toe setiina le leoleo leoleo i taamilosaga uma, i.e. lua

mo (rc = 0; rc <4; rc ++) // amataga o le taamilosaga mo le siakiina o le tausisia o le tulaga ulufale
// port bits i le tulaga faitau muamua o port D bits
{
pinState = (PIND >> 4) & ( b << rc );

afai (pumrcounter [rc] != pinState) { // ma afai e le fetaui, ona
pumrcounter[rc] = pinState; // tu'uina atu le fesuiaiga o le tulaga o le port bit se tau fou 1/0
}
// faʻailoga o le tulaga o mea e pulea lanu
// BLUE o se faʻalavelave laʻititi o le mata o loʻo iai (poʻo le faletusi?), RGB ma BGR o loʻo faʻafefiloi.
afai (pinState == (b << rc )) {
tft.fillRect(15, ((rc * 10 + shift)), 7, 7, ST7735_BLUE); // mo le faitau aofa'i maualalo suia le GREEN i le BLUE
} aisi {
tft.fillRect(15, ((rc * 10 + shift)), 7, 7, ST7735_GREEN); // mo le faitau aofa'i maualalo suia BLUE i le GREEN
pamu [rc] += 1; // fa'aopoopo le 1 sekone i le fa'asologa o taimi fa'atino
}
}

k++;
afai (k == 36) {
k = 0;

tft.fillRect(30, shift, 97, 40, ST7735_BLACK); // fa'amama le vaega fa'aaliga taimi fa'atino
tft.fillRect(60, 120, 73, 7, ST7735_BLACK); // ma aso

tft.setCursor(60, 120); // fa'atulagaina le tulaga fa'ailo
tft.print(rtc.getDateStr()); // fa'aali le aso ile mata LCD

mo (rc = 0; rc <4; rc ++) //tuuina itula faigaluega atoa, vae sefulu ma
{
tft.setCursor ( 30, rc * 10 + shift ); // selau selau itula ma le siiina o lau mata i lalo i le 10 pixels
tft.println(pamu [rc] / m);
}

// tusia le "mata" o itula faigaluega (i sekone) i le EEPROM //////////////////////////

mo (rc = 0; rc <4; rc++)
{
EEPROM.put(tuatusi, pamu [rc]);
tuatusi += lapopo'a(fa'opeopea); // fa'aopoopo le fesuiaiga o le tuatusi tusi
}
}

// auina atu faʻamatalaga i luga ole alaleo leitio mai faʻamaumauga e faʻaalia ai le tele o paita e tatau ona lafo.
afai ((k == 6 ) || (k == 18 ) || (k == 30 )) {

fa'amaumauga umi e le'i sainia;

radio.write(&amata, sizeof(amata));

mo (i = 0; i <4; i++) {
fa'amaumauga = pamu [i];
radio.write( &fa'amatalaga, tele(fa'amatalaga));
}
}
}

O nai faʻamatalaga i le faaiuga. O le faitau e tupu i se tulaga maualalo maualalo i mea fa'aoga.

Pull-up resistances R2-R5 e 36 kOhm mo le filifiliga ma photoresistors GL5516. I le tulaga o se phototransistor optocoupler ma relay, seti i le 4,7-5,1 kOhm. O le Arduino Nano v3.0 bootloader na suia i le Arduino Uno e faʻaaoga ai le TL866A programmer mo le faʻaogaina saʻo o le timer watchdog. O fuses e faʻasaʻo e faʻagaioi i voltage i luga aʻe o le 4,3 V. E leʻi faʻaogaina le faʻaogaina o fafo R6 C3. I le polokalame faʻataʻitaʻiga, o le alalaupapa faʻasalalau e le fetaui ma le laina le laiseneina; o le 2,4 MHz laina faʻatapulaʻa i laina 2400.0-2483.5 MHz.

Ole laina ole E01-ML01DP05 transmitter ole 2400-2525 MHz. O le bandwidth o le tasi alalaupapa o le 1 MHz, pe a seti le saoasaoa e pei o le "RF24_2MBPS" le leitio faʻamaonia.setChannel(120) auala ma le isi o le a nofoia, i.e. o le faaili o le a 2 MHz.

puna: www.habr.com

Faaopoopo i ai se faamatalaga