
Ak hľadáte jeden Doska Arduino ktorý sa pripája k internetu cez WiFi, využite technológiu Bluetooth a NFC, potom model Prvé Je ideálny pre vaše projekty.
Je to vďaka jeho vysoko kvalitnej konektivite a ďalším komponentom, ktoré podstatne zlepšujú jeho ovládateľnosť.Jedným z týchto prvkov je súbor MCU ktoré sa používajú na udržanie dobrého spojenia.
Ak chcete vedieť, ako pracovať s Doska Arduino PrimoBudete musieť pokračovať v čítaní. Ukážeme vám zoznam najlepších nápadov ktoré si dokážete urobiť sami.
Čo sú to dosky Arduino Primo a na čo sa tieto open-source hardvérové dosky používajú?
La Doska Arduino Primo Ide o model, ktorý bol vyvinutý v Spojených štátoch a uvedený na trh v roku 2016. Vo svojich ovládačoch sa vyznačuje 32-bitovou architektúrou, 14 pinov pre digitálny vstup a výstup a 6 pinov pre analógové vstupy..
To môže vytvoriť širokú škálu projektov, najmä tie, ktoré majú batériupretože ponúka infračervený prijímač a vysielač a nabíjačku batérií. Obsahuje aj sieťovú dosku. Wi-Fi a BluetoothPreto je možné práca v oblasti internetu vecí.
Aké sú špeciálne vlastnosti vývojových dosiek Arduino Primo?
Medzi najvýraznejšie vlastnosti, ktoré nájdete na doske Arduino Primo, patria:
- Tento tanier má veľkosť 7,62 x 5,08 cm. a váži 85 gramov.
- Možno pripojiť k WiFi, prostredníctvom bluetooth a prostredníctvom technológie komunikácie blízkeho poľa NFC.
- Má 3 mikrokontrolérynRF52832, STM32f103 a ESP8266. Tieto fungujú ako hlavný MCU dosky, na ladenie programu a na pripojenie k WiFi.
- má 14 digitálnych pinov vstupné a výstupné piny, z ktorých 12 sa dá použiť ako pulzné markery alebo PWM. Má tiež 6 analógových vstupných pinov.
- Má konektor MicroUSBs anténou pre NFC, bzučiak a tlačidlá resetovania a napájania.
- Taktiež má nabíjačka batérií s rezonátorom 64 MHz.
- Napätie, pri ktorom pracuje, je 3VPreto si človek musí dávať pozor na nespaľujte komponenty.
- Pracujte s a WiFi protokol 11 bgn en 2.4 GHz frekvencie.
Vylepšená konektivita: Ako čo najlepšie využiť túto funkciu Arduina Primo?
Aby ste lepšie využili konektivitu, ktorú ponúka doska Arduino Primo Budete musieť pridať základnú dosku Arduino NRF52 do IDE..
Môžete to urobiť tak, že prejdete na Nástroje, potom vyberiete Dosky a nakoniec vyberiete Správcu dosiek:
- Následne sa otvorí nové okno, v ktorom Budete si musieť vybrať jadro NRF52.
- Mali by ste mať na pamäti, že ak pracujete na počítači s operačným systémom Vo Windows alebo MacOS nebudete musieť inštalovať ovládačeAk však použijete Linux budeš musieť spustiť skript Nájdete ho na oficiálnej webovej stránke Arduino.
https://www.arduino.cc/en/Sh/Txt - Potom budete musieť pridať sériový portAk to chcete urobiť, budete sa musieť prihlásiť do IDE a kliknite na náradie a potom dovnútra Ponuka sériového portu, kde nájdete názov portu, ku ktorému je vaša doska pripojená.
- Po nahraní prostredia (kliknutím na Program a potom dovnútra Nahrať), budete potrebovať Pripojte sa k internetu cez WiFiMôžete to urobiť zapnutím sieťového adaptéra a následným otvorením ponuky Sieť v počítači. Nájdete ju veľmi ľahko. SSID, keďže nesie meno Arduino bratranec.
- Do prehliadača budete musieť zadať adresu
http://192.168.240.1/aby ste mali prístup k možnostiam konfigurácie základnej dosky. Potom budete musieť prejsť do ponuky Spojenie Budete musieť zadať heslo k Wi-Fi a potom klepnúť na PRIPOJIŤ. - konečne, Zobrazí sa IP adresa Arduina.Preto budete musieť zmeniť stav z panela nastavení na PREPNITE DO REŽIMU STATakto môžete dosiahnuť lepšie pripojenie.
Zoznam nápadov na projekty, ktoré môžete rozvíjať pomocou dosiek Arduino Primo
Nižšie nájdete zoznam najlepších projektov, ktoré môžete s Arduino Primo realizovať sami:
Monitor srdcovej frekvencie
Budete môcť vytvoriť pomocou dosky Arduino Primosnímač pulzu pre získať informácie o srdcovej frekvencii a potrebné káble na pripojenie. Najprv by ste mali pripojiť napájanie senzora na 3.3 V; potom uzemnenie na uzemnenie dosky a signál na kanál A0.
Ďalej budete musieť zadať tieto programovacie kódy:
#zahrnúť #define SIGNAL A0 BLEPeripheral blePeripheral; BLEService heartRateService("180D"); BLECharacteristic heartRateChar("2A37", BLERead | BLENotify, 2); void findHeartRate(float averageSample); int sample[300] = { 0 }; int n = 0; int sumSample = 0; float averageSample = 0; void setup() { begin(250000); setLocalName("HeartRateSketch"); setAdvertisedServiceUuid(heartRateService.uuid()); addAttribute(heartRateService); addAttribute(heartRateChar); begin(); println("Zariadenie Bluetooth aktívne, čaká na pripojenie..."); } void loop() { BLECentral central = blePeripheral.central(); if (central) { print("Pripojené k centrále: "); println(central.address()); //zapnutie BLE LED digitalWrite(BLE_LED, HIGH); while (central.connected()) { if (millis() % 10 == 0) { int rawValue = analogRead(A0); int sensorValue = map(rawValue, 0, 1023, 0, 255); println(sensorValue); sumSample = sumSample + sensorValue; sumSample = sumSample - sample[n]; sample[n] = sensorValue; n++; averageSample = (float)sumSample / 300; if (n == 300) { n = 0; findHeartRate(averageSample); } delay(1); } } print("Odpojené od centrály: "); println(central.address()); } digitalWrite(BLE_LED, LOW); delay(200); digitalWrite(BLE_LED, HIGH); delay(200); } void findHeartRate(float averageSample) { int count = 0; int totalTime = 0; int lastI = 0; bool trendState = false; bool goOverThreshold = false; int heartRate = 0; float setThreshold = 1.25; for (int i = 0; i < 300; i++) { goOverThreshold = (sample[i] > (averageSample * setThreshold)); if (goOverThreshold != trendState) { trendState = goOverThreshold; if (goOverThreshold == false) { if (count > 0) { totalTime = totalTime + (i - lastI); } count++; lastI = i; } } } heartRate = 6000 * (count - 1) / totalTime; const unsigned char heartRateCharArray[2] = { 0, (char)heartRate }; setValue(srdcováTeplotaCharArray, 2); //Serial.print("srdcováTeplota je: "); //Serial.println(srdcováTeplota); }
Ovládanie myšou cez mobilné zariadenie v multimediálnom prehrávači
Budete potrebovať gombíkovú batériu typu CR2032, tanier Arduino Primo Core a mobilný telefón s bluetooth aktivovaný.
Pri práci s IDE nebudete potrebovať žiadnu dosku plošných spojov, takže budete musieť priamo zadať tieto kódy:
#zahrnúť #zahrnúť #zahrnúť #zahrnúť #define MOUSE_RANGE 24 #define INT1 21 int tap = 0; int chrono = 0; int count = 0; BLEHIDPeripheral bleHIDPeripheral = BLEHIDPeripheral(); BLEMouse bleMouse; BLESystemControl bleSystemControl; void setup() { pinMode(LED_BUILTIN, OUTPUT); pinMode(12, OUTPUT); begin(115200); println(F("BLE HID Peripheral - vymazanie údajov o spojení")); clearBondStoreData(); setReportIdOffset(1); setLocalName("Arduino Core Mouse"); addHID(bleMouse); addHID(bleSystemControl); begin(); println(F("BLE HID Demo")); begin(); enableSingleTapDetection(); attachInterrupt(INT1, Tap, RISING); } void loop() { BLECentral central = bleHIDPeripheral.central(); digitalWrite(LED_BUILTIN, LOW); if (central) { print(F("Pripojené k centrále: ")); println(central.address()); count = 0; while (central.connected()) { digitalWrite(LED_BUILTIN, HIGH); if (tap) { tap = 0; uint8_t status = 0; getStatusSingleTapDetection(&status); if (status) { if (count % 2 == 0){ digitalWrite(12, HIGH); //zapnutie LED press(); count++; } else { digitalWrite(12, LOW); release(); count++; } } } int32_t akcelerometre[3] = {0}; getAccelerometer(akcelerometre); ak (akcelerometre[2] > 0 && (abs(akcelerometre[0])>100||abs(akcelerometre[1])>100) && (millis()>(chrono+200))) { int mappedX = mapa(akcelerometre[0], -1023, 1023, -12, 12); int mappedY = mapa(akcelerometre[1], -1023, 1023, -12, 12); int x = -1 * mappedX; int y = mappedY; move(x, y); }
Potom musíte Pripojte svoj mobilný telefón k doske cez Bluetooth začnite používať bezdrôtovú myš.
Senzor počasia
Tento projekt je o niečo zložitejší ako predchádzajúce, pretože Budete potrebovať dve dosky Arduino, jednu Primo a jednu Primo Core. Ten druhý je zodpovedný za odosielanie signálu do prvého, aby ste mohli na webe vyhľadávať teplotu v konkrétnom meste. Okrem dvoch panelov budete potrebovať aj CR2032 a smartfón.
Budete musieť pripojiť Arduino k príslušným pinom a pokračovať v zadávaní týchto kódov do IDE:
#zahrnúť #zahrnúť #zahrnúť BLESerial bleSerial = BLESerial(); char ssid[] = "cclIT"; char pass[] = "ht34!eG$"; int keyIndex = 0; int count; charmemory[5]; char fahrenheit[4]; char celsius[4]; bool flag = false; int status = WL_IDLE_STATUS; char server[] = "www.nytimes.com"; WiFiClient klient; void setup() { setLocalName("WeatherFinder"); pinMode(BLE_LED, OUTPUT); begin(115200); begin(); memory[4] = '\0'; fahrenheit[3] = '\0'; celsius[3] = '\0'; } void loop() { poll(); if (bleSerial && Serial) { int byte; if ((byte = bleSerial.read()) > 0) { if (WiFi.status() == WL_NO_WIFI_MODULE_COMM) { println("Komunikácia s WiFi modulom nebola nadviazaná."); } while (status != WL_CONNECTED) { print("Pokus o pripojenie k SSID: "); println(ssid); status = WiFi.begin(ssid, pass); delay(10000); } println("Pripojené k wifi"); println("\nSpúšťa sa pripojenie k serveru..."); if (client.connect(server, 80)) { println("pripojené k serveru"); println("GET /gst/weather.html?detail=Cagliari--IY HTTP/1.1"); println("Hostiteľ: www.nytimes.com"); println("Pripojenie: zatvorené"); println(); } flag = true; } } while (flag) { while (client.available()) { char c = client.read(); if (c == 176 && count < 2) { if (count == 0) { fahrenheit[0] = memory[0]; fahrenheit[1] = memory[1]; fahrenheit[2] = memory[2]; } else { celzius[0] = memory[0]; celzius[1] = memory[1]; celzius[2] = memory[2]; } count++; } memory[0] = memory[1]; memory[1] = memory[2]; memory[2] = memory[3]; memory[3] = c; } if (!client.connected()) { println(); println("odpájam sa od servera."); if (fahrenheit[1] == 62){ fahrenheit[1] = 32; fahrenheit[0] = 32; } inak ak (fahrenheit[0] == 62){ fahrenheit[0] = 32; } if (celzius[1] == 40){ celzius[1] = 32; celzius[0] = 32; } inak ak (celzius[0] == 40){ celzius[0] = 32; } print("Teplota v stupňoch Fahrenheita: "); print(fahrenheit); println("°"); print("Teplota v stupňoch Celzia: "); print(celzius); println("°"); stop(); write(celzius); flag = false; } } if (bleSerial.status() == REKLAMA) { digitalWrite(BLE_LED, LOW); delay(200); digitalWrite(BLE_LED, HIGH); delay(200); } inak digitalWrite(BLE_LED, HIGH); }


















