Skocz do zawartości

Leonarsen

Użytkownicy
  • Zawartość

    18
  • Rejestracja

  • Ostatnio

Reputacja

1 Neutralna

O Leonarsen

  • Ranga
    2/10

Informacje

  • Płeć
    Mężczyzna

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Czyli deklaracja CE to tylko dokument wystawiony prze firmę-producenta lub dystrybutora? Więc zakładając że na potrzeby dyskusji pomijamy odpowiedzialność związana z ew nieprzewidzianych wypadkami. Firma która wystawi taka deklaracje ma problem z głowy i nie musi się obawiać jakiś dodatkowych kontroli lub innych opłat etc? Może sprzedawać taki produkt? Kolejne pytanie jest następujące. Jeśli mam płytkę główna przygotowana do różnych funkcjonalności (płytka A) i do tego płytki zadaniowe (B, C, D itd). Oraz zakładając że każda płytkę z osobna przebadalem i mam deklaracje CE to czy muszę takie badania robic dla każdego połączenia płytek? Np połączenie A + B albo A + B + C i takich konfiguracji mogę mieć kilkanaście w zależności od potrzeb klienta. Dowolna szafka automatyki składająca się np 30 elementów posiadających certyfikat CE jako całość posiada ten certyfikat. Temat niestety jak widać jest dla mnie niejasny.
  2. No tak było by najprościej. Nie mogę natomiast znaleźć informacji że takie gotowe płytki rozwojowe mają certyfikaty CE i można je wkładać do urządzeń które gdzieś tam działają na obiektach.
  3. Cześć, poszukuję mikrokontrolera w obudowie przemysłowej. Mam do obsługi sterowanie poprzez magistralę SPI, w zasadzie proste operacje. Płytki deweloperskie typu: https://botland.com.pl/pl/stm32-discovery/865-stm32f0-discovery-stm32f0discovery.html zupełnie mi wystarczają, jest natomiast haczyk. Polega on na tym żeby taki mikrokontroler był zamknięty w obudowie przemysłowej (właściwie nie musi być w obudowie, może być to płytka ale z certyfikatami) i posiadał potrzebne certyfikaty tupu CE. Mógłbym taką płytkę zrobić sam ale w związku z certyfikatami jest to problem. Czy znacie jakieś rozwiązania spełniające te kryteria? Znalazłem coś takiego: https://www.shemeck.pl/4511-indprotod21g-arm-sterownik-plc-arduino-z-wejsciami-i-wyjsciami-cyfrowymi-i-analogowymi.html https://www.conrad.pl/p/modu-sterujacy-controllino-maxi-100-100-00-12-vdc-24-vdc-1325475 Pewnie jest coś podobnego ale się nie natknąłem a chętnie porównam ciekawe rozwiązania. Pozdrawiam.
  4. Używałem kodu ze strony: https://circuits4you.com/2018/03/09/esp8266-static-ip-address-arduino-example/ oczywiście wpisałem swoje parametry. /* * ESP8266 NodeMCU LED Control over WiFi Demo * Using Static IP Address for ESP8266 * https://circuits4you.com */ #include <ESP8266WiFi.h> #include <WiFiClient.h> //ESP Web Server Library to host a web page #include <ESP8266WebServer.h> //--------------------------------------------------------------- //Our HTML webpage contents in program memory const char MAIN_page[] PROGMEM = R"=====( <!DOCTYPE html> <html> <body> <center> <h1>WiFi LED on off demo: 1</h1><br> Ciclk to turn <a href="ledOn">LED ON</a><br> Ciclk to turn <a href="ledOff">LED OFF</a><br> <hr> <a href="https://circuits4you.com">circuits4you.com</a> </center> </body> </html> )====="; //--------------------------------------------------------------- //Static IP address configuration IPAddress staticIP(192, 168, 43, 90); //ESP static ip IPAddress gateway(192, 168, 43, 1); //IP Address of your WiFi Router (Gateway) IPAddress subnet(255, 255, 255, 0); //Subnet mask IPAddress dns(8, 8, 8, 8); //DNS const char* deviceName = "circuits4you.com"; //On board LED Connected to GPIO2 #define LED 2 //SSID and Password of your WiFi router const char* ssid = "yourWiFissid"; const char* password = "yourWiFipassword"; //Declare a global object variable from the ESP8266WebServer class. ESP8266WebServer server(80); //Server on port 80 //=============================================================== // This routine is executed when you open its IP in browser //=============================================================== void handleRoot() { Serial.println("You called root page"); String s = MAIN_page; //Read HTML contents server.send(200, "text/html", s); //Send web page } void handleLEDon() { Serial.println("LED on page"); digitalWrite(LED,LOW); //LED is connected in reverse server.send(200, "text/html", "LED is ON"); //Send ADC value only to client ajax request } void handleLEDoff() { Serial.println("LED off page"); digitalWrite(LED,HIGH); //LED off server.send(200, "text/html", "LED is OFF"); //Send ADC value only to client ajax request } //============================================================== // SETUP //============================================================== void setup(void){ Serial.begin(115200); WiFi.begin(ssid, password); //Connect to your WiFi router Serial.println(""); //Onboard LED port Direction output pinMode(LED,OUTPUT); //Power on LED state off digitalWrite(LED,HIGH); WiFi.disconnect(); //Prevent connecting to wifi based on previous configuration WiFi.hostname(deviceName); // DHCP Hostname (useful for finding device for static lease) WiFi.config(staticIP, subnet, gateway, dns); WiFi.begin(ssid, password); WiFi.mode(WIFI_STA); //WiFi mode station (connect to wifi router only // Wait for connection while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } //If connection successful show IP address in serial monitor Serial.println(""); Serial.print("Connected to "); Serial.println(ssid); Serial.print("IP address: "); Serial.println(WiFi.localIP()); //IP address assigned to your ESP server.on("/", handleRoot); //Which routine to handle at root location. This is display page server.on("/ledOn", handleLEDon); //as Per <a href="ledOn">, Subroutine to be called server.on("/ledOff", handleLEDoff); server.begin(); //Start server Serial.println("HTTP server started"); } //============================================================== // LOOP //============================================================== void loop(void){ server.handleClient(); //Handle client requests }
  5. Sprawdziłem kilka rzeczy. Po ustawieniu statycznego IP nadal zostaje mi przydzielony 10.1.43.46. Robię to dobrze bo na innym routerze działa tak jak ustawiłem. Szukam dalej przyczyny. Dziś sprawdziłem że urządzenie które dostałem od dostawcy to tak naprawdę modem z opcją wi-fi (chyba jest to Cisco epc3008 odtwarzam z pamięci bo nie mam tego przed sobą). Zastanawiam się nadal czy urządzenie może być przyczyną tego kłopotu. Biorąc pod uwagę brak dostępu do tego klamota, chyba kupię jakiś router, podłącz za tym modemem i zrobię swoją sieć...
  6. Trochę się pogubiłem. Sprawdziłem dokładnie i tak: - telefon ma adres 10.1.24.204 - esp ma adres 10.1.43.46 - laptop ma adres 10.1.24.44 (maska 255.255.248.0) teraz faktycznie widzę że esp dostało adres z innej puli. Dlaczego tak się stało tylko w sieci wi-fi w mieszkaniu? A w sieci hot-spot z telefonu wszystkie adresy przydzielają się automatycznie z tej samej podsieci? Dodatkowo, ja korzystam ze standardowej biblioteki espwifi i tam nie mogę (chyba) nadać swojemu esp adresu tylko pytam router o wolny adres i taki zostaje mi przydzielony. Czy można to zrobić jakoś inaczej? Ale jest to dodatkowa sprawa do rozwiązania później.
  7. Adres z tej samej podsieci co podłączony np laptop lub telefon. Adresy które dostaje to 10.1.43.xxx A próbuje się połączyć z sieci lokalnej przez Wi-Fi.
  8. Odświeżając trochę pytanie, czy ma ktoś pomysł dlaczego jest taki problem z magistralą 1-wire? Kolejne pytanie jakie mi się pojawiło. Konfigurując układ w sieci wi-fi postawionej na telefonie wszystko działa tak jak należy. Oznacza to że łącze się po wi-fi, układ dostaje adres ip i po tym adresie łącze się z utworzonym serwerem i wszystko działa. Konfigurując wszystko tak sam dla sieci Wi-fi w mieszkaniu dostaję jakiś adres ip ale nie mogę się z nim połączyć. Niestety nie mam dostępu do routera ponieważ dostawca internetu tego nie udostępnił. Moje pytanie brzmi czy w routerze może być coś wyłączone lub jakaś opcja odłączona która coś mi blokuje i nie mogę połączyć się z utworzonym serwerem? Pozdrawiam i mam nadzieję że ktoś może zna rozwiązanie takiego problemu
  9. Super. Dopiero tylko zerknąłem jak narazie co to jest, ale wygląda że dokładnie o coś takiego mi chodziło. Dzięki za podpowiedź.
  10. Cześć, ostatnio ćwiczę trochę z pomiarami temperatury i wilgotności czyli DHT + ESP8266. Męczę różne konfigurację bazując na tym kodzie ze strony https://lastminuteengineers.com/esp8266-dht11-dht22-web-server-tutorial/ : #include <ESP8266WiFi.h> #include <ESP8266WebServer.h> #include "DHT.h" // Uncomment one of the lines below for whatever DHT sensor type you're using! //#define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT21 // DHT 21 (AM2301) #define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 /*Put your SSID & Password*/ const char* ssid = "YourNetworkName"; // Enter SSID here const char* password = "YourPassword"; //Enter Password here ESP8266WebServer server(80); // DHT Sensor uint8_t DHTPin = D8; // Initialize DHT sensor. DHT dht(DHTPin, DHTTYPE); float Temperature; float Humidity; void setup() { Serial.begin(115200); delay(100); pinMode(DHTPin, INPUT); dht.begin(); Serial.println("Connecting to "); Serial.println(ssid); //connect to your local wi-fi network WiFi.begin(ssid, password); //check wi-fi is connected to wi-fi network while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected..!"); Serial.print("Got IP: "); Serial.println(WiFi.localIP()); server.on("/", handle_OnConnect); server.onNotFound(handle_NotFound); server.begin(); Serial.println("HTTP server started"); } void loop() { server.handleClient(); } void handle_OnConnect() { Temperature = dht.readTemperature(); // Gets the values of the temperature Humidity = dht.readHumidity(); // Gets the values of the humidity server.send(200, "text/html", SendHTML(Temperature,Humidity)); } void handle_NotFound(){ server.send(404, "text/plain", "Not found"); } String SendHTML(float Temperaturestat,float Humiditystat){ String ptr = "<!DOCTYPE html> <html>\n"; ptr +="<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=no\">\n"; ptr +="<title>ESP8266 Weather Report</title>\n"; ptr +="<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}\n"; ptr +="body{margin-top: 50px;} h1 {color: #444444;margin: 50px auto 30px;}\n"; ptr +="p {font-size: 24px;color: #444444;margin-bottom: 10px;}\n"; ptr +="</style>\n"; ptr +="</head>\n"; ptr +="<body>\n"; ptr +="<div id=\"webpage\">\n"; ptr +="<h1>ESP8266 NodeMCU Weather Report</h1>\n"; ptr +="<p>Temperature: "; ptr +=(int)Temperaturestat; ptr +="°C</p>"; ptr +="<p>Humidity: "; ptr +=(int)Humiditystat; ptr +="%</p>"; ptr +="</div>\n"; ptr +="</body>\n"; ptr +="</html>\n"; return ptr; } Mam jednak kilka uwag i pytań. Podczas podgrywania programu (lub resetu/wyłączenia zasilania) moduł dht musi być odłączony od układu ESP. W innym wypadku program się nie podegra (w przypadku resetu nie wystartują pomiary). Dodałem w kodzie, zasilanie układu dht, po kilku sekundach od podegrania/resetu, dzięki temu moduł DHT działa prawidłowo. Pytanie brzmi dlaczego tak się dzieje? Czy jest to jakiś konflikt na magistrali 1-wire?? Wyczytałem że dht korzysta z takiej właśnie (zmodyfikowanej) magistrali. Jeśli to jest ta przyczyna to może ktoś zna szczegóły? Jeśli to coś innego to co? Kolejna moja zagwozdka to czy jest możliwość podgarnia programu a dopiero później zadeklarować nazwę sieci i hasło? Myślałem wstępnie o wpisywaniu tego przez konsolę szeregową ale czy jest to możliwe? A jeśli tak to zapisy do zmiennej a następnie reset całego układu i to wszystko wywołane z konsoli szeregowej? Ponieważ trochę się już nad tym zastanawiam proszę o jakąś podpowiedź. Pozdrawiam.
  11. Mam pewien problem. Chcąc obsłużyć przycisk tak jak to jest opisane w kursie po dodaniu odpowiedniego kodu, eclipse zgłasza warning a po kompilacji zgłasza error's. Dodam że problem występuje podczas próby uruchomienia przycisku. W tej samej konfiguracji jeśli chcę włączyć np. tylko diodę jest ok. Czy ktoś ma jakiś pomysł czym to może być spowodowane i jak rozwiązać ten problem? Pozdrawiam
  12. Jeśli dobrze zrozumiałem to można utworzyć tam nowego noda (bloczek) w którym np. napiszemy komunikację modbus? Poprawcie mnie jeśli jest inaczej
  13. nie, dlatego że punktem wyjściowym w moich rozważaniach było raspbery. Jeśli się nie nadaje to coś innego
  14. Witam, chcę podłączyć do TV (LG 42 cale, na razie nie mam dokładnego modelu) urządzenie dzięki któremu można będzie pooglądać youtube + od czasu do czasu jakieś stronki internetowe (głównie portale informacyjne). Wcześniej tv korzystał z preinstalowanej aplikacji do yt niestety od czerwca przestałą być wspierana. Rozważałem podłączenie raspbery ale mam wątpliwość czy yt będzie działał wystarczająco płynnie, dlatego zacząłem również przeglądać różnego rodzaju android box oraz mini komputery w stylu intel stick. Przewidziany budżet to 200-300 zł. Czy waszym zdaniem w tej cenie uda się dobrać coś rozsądnego? Co będzie działało najpłynniej? Czy macie jakieś doświadczenia z takimi rozwiązaniami? A może jest jakieś ciekawsze rozwiązanie?
  15. Witam, buduję układ przesyłający temperaturę oraz wilgotność do sterownika PLC po Modbusie RTU dla standardu RS485. Jak dotąd udało mi się uruchomić układ ale w standardzie RS232. #include <Modbusino.h> #include <DHT11.h> /* Initialize the slave with the ID 1 */ ModbusinoSlave modbusino_slave(1); /* Allocate a mapping of 10 values */ uint16_t tab_reg[10]; uint16_t tab_req[10]; int pin=4; DHT11 dht11(pin); void setup() { /* The transfer speed is set to 115200 bauds */ modbusino_slave.setup(115200); } void loop() { int err; float temp, humi; int t = int(temp); int h = int(humi); if((err=dht11.read(humi, temp))==0) { tab_reg[0] = t; tab_reg[1] = h; } modbusino_slave.loop(tab_reg, 10); } biblioteka modbus: https://github.com/stephane/modbusino Mam pytanie jak przerobić powyższy kod tak żeby działał dla RS485. Wiem że muszę użyć dodatkowego pinu sterującego dla nadawania i odbierania, niestety nie wiem jak to zaimplementować. Czy da się przerobić w łatwy sposób powyższy kod Pozdrawiam
×
×
  • Utwórz nowe...