Hirdetés
-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
nagyúr
Tudom, az enyém is az.
Zoja: van pár kiszolgált dvd meghajtó itthon, abból terveztem steppereket kinyerni. Sőt, van a neten pár diy dvd meghajtós házi plotter meg efféle projekt, kezdetnek arra biztos jó lesz.
Egy 3d nyomtatóhoz (egy menetes szárat megforgatni?) nem hiszem, hogy olyan túl nagy teljesítményű stepperek kellenének.[ Szerkesztve ]
-
Zoja™
őstag
Ilyenem nekem is van, de egyelőre parkoló pályára van téve a projekt. Még nincsenek meg hozzá a stepperek, bár a cégnél vannak NEMA23-asok, de gyanítom, hogy kevés lenne a motorvezérlő hozzájuk.
NEMA17-esekkel biztos jó lenne, ami nem is egy ökör ára, csak ne lenne olyan mocskos drága a Bosch profil.[ Szerkesztve ]
-
mArZsi
tag
Ez egy shield, egybedugod szendvicsbe , csatlakoztatod a steppereket, adsz valami erős tápot neki (5A), szoftvert feltöltöd és mehet is a móka.
GBRL kompatibilis, 3D nyomtatót, CNC-t vagy bármi mást is vezérelhetsz vele.
A saját PnP beültetőgépet én is A4988 vezérlővel oldottam meg.Szoftver vagy hardver oldali segítség kellene?
[ Szerkesztve ]
-
nagyúr
válasz DrojDtroll #5793 üzenetére
Bocs, eltévesztettem, ilyenem van, de kb ugyanaz, mint a ramps.
-
nagyúr
válasz DrojDtroll #5793 üzenetére
Nekem csak van egy itthon, de még nem vettem használatba. Erősen gondolkodom egy 3d nyomtató építésén, gondoltam ha van egy ramps itthon, az majd lendít egyet előre az ügyön, de nem.
Tudok segíteni esetleg? -
DrojDtroll
veterán
Sziasztok!
Van itt valaki aki használ Ramps1.4-et nem 3d nyomtatásra vagy hasonlóra, csak stepper vezérlésre?
-
quint
aktív tag
Egy ilyesmi valószínűleg elférne.
-
vargalex
félisten
Szia!
A
renderPage
függvényben ezt a részt:if (digitalRead(pin_relays[relayIndex])) {
relay_state="checked";
}cseréld erre:
if (!digitalRead(pin_relays[relayIndex])) {
relay_state="checked";
}Most olvasom, hogy neked low level trigger reléd van. Ha a relé állapotát akarod kijelezni, akkor ez lesz a helyes megoldás nálad. Ugyanis a kód eredeti állapotában a GPIO magas állapotánál jelez ON-t.
[ Szerkesztve ]
Alex
-
tvamos
nagyúr
Sziasztok! Tudnatok nekem ajanlani valami kis meretu LCD kijelzot? Olyan kenem, ami mondjuk ugy 15 x 50 mm, de minden keppen kisebb, mint 20 x 80 mm. Eleg 2x10 karakter. Arduinohoz kell...
Kosz a segitseget, elore is!"Mindig a rossz győz, és a jó elnyeri méltó büntetését." Voga János
-
vargalex
félisten
válasz Janos250 #5780 üzenetére
Kábelneted van UPC-nél? A legtöbb embernek éppen az a problémája, hogy hogyan tudna IP-t cserélni. Ez HGW esetén router módban szinte lehetetlen, saját routerrel viszont csak MAC klónozással lehet. Ezért csodálkozom... Pedig több UPC-s emberkével is kapcsolatban állok, mindenkinél nagyjából fix az IP.
Alex
-
vargalex
félisten
válasz Janos250 #5778 üzenetére
Nyilván, ha van valamilyen DNS cache-ed, akkor az okozhat problémát. De mondom, az UPC nem cserél IP címet. Legalábbis, ha nem ADSL-ről beszélünk. Csak MAC cím változáskor fog változni valójában az IP címed.
Az IP váltás lekövetése viszont csak a cache élettartamán múlik. Ezt nem tudom, hogy lehet-e windows-ban állítani, linux-ot használok.
[ Szerkesztve ]
Alex
-
Janos250
őstag
válasz vargalex #5777 üzenetére
Mert én egy lusta ember vagyok
Tudod, fél egészség
(De van gépem, amin a legfrissebb verziók vannak, de lusta vagyok mindig mindent frissítgetni. Ezen a gépen is ott van mellette az arduino legfrissebbje, mégis ezt használom ).Nem is Neked írtam az elérést, hanem másoknak, akik olvassák. Lehet, hogy ez fölösleges volt, de már nem tudom törölni.
A másik kérdésben elbeszélünk egymás mellett:
Hiába tudja már a dyndns az új IP címet, ha útközben még megjegyezték a régit, és lassan térnek át az újra.
Pl. azt sem akarom, hogy windows alatt mindig hívogassam az ipconfig/flusdns-t.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
vargalex
félisten
válasz Janos250 #5776 üzenetére
Én tudom hol van, csak ugye ezek olyan header file-ok, amiket automatikusan include-ol az alaplap kiválasztásával. Ezért hívtam fel rá a figyelmet. Egyébként miért RC2 verziót használsz? 8 nappal az RC2 kiadása után kijött a végleges 2.3.0 (2016.06.23-án).
[ Szerkesztve ]
Alex
-
Janos250
őstag
válasz vargalex #5773 üzenetére
"Sima ESP8266-on a D1, D2, stb. PIN-ek nincsenek definiálva"
Ezért szoktam én javasolni, hogy mindig nézzük meg az adott panelra vonatkozó pins_arduino.h fájlt.
Nálam pl. a d1-re itt van (én mindig portable módban használom):
C:\Arduino\arduino-1.6.10\portable\packages\esp8266\hardware\esp8266\2.3.0-rc2\variants\d1\pins_arduino.hAz amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
vargalex
félisten
válasz Janos250 #5774 üzenetére
Azt gondoltam, hogy külső elérésről van szó, de továbbra sem értem a problémát. Az Arduino (esetemben ESP8266) nem foglalkozik a külső IP-vel. A routernek kell frissíteni a ddns szolgáltatónál az új IP-re, te továbbra is ugyan azon az URL-en fogod elérni.
[ Szerkesztve ]
Alex
-
Janos250
őstag
válasz vargalex #5773 üzenetére
"Az állomások pedig egy belső IP címet. Mi közük az eszközöknek a külső IP-hez?"
Bocs, nem voltam egyértelmű. Hálózaton belül természetesen semmi köze a külső IP címhez,
de én arról az esetről beszéltem, ha mondjuk Szegeden van az arduinód, Te meg Pesten.
A linket meg kösz, átbogarászom, mert én nem ezt használom. Hátha ez jobb.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
vargalex
félisten
válasz Janos250 #5772 üzenetére
Nyilván a jquery kicserélhető bármire (akár maradhat simán checkbox is, vagy saját CSS-t lehet gyártani pl. így), csak azért raktam bele, hogy kicsit pofásabb legyen a megjelenítés és maga a kód rövidebb. Nálam nem volt szempont az adatmennyiség.
UPC-nél a DHCP net miatt tipikusan nem változik az IP cím. Ettől függetlenül nálam is van dyndns természetesen (már egy jó ideje az ipdns.hu-t használom). De a kérdésedet nem igazán értem... Ugyanis az UPC által adott IP-t nyilván a router WAN oldala kapja. Az állomások pedig egy belső IP címet. Mi közük az eszközöknek a külső IP-hez? Nekik a routerben statikus lease van beállítva a DHCP szervernél...
És akkor a javított kód, mert a
<body>
és a<html>
tag lezárása lemaradt (igaz, a böngészőket nem zavarja, automatikusan lezárják):#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#define DEFAULT_STATE LOW
// Replace with your network credentials
const char* ssid = "TP-Link";
const char* password = "asdf1234";
// GPIOs for controlling the relays
uint8_t pin_relays[] = { D1, D2 };
ESP8266WebServer server(80);
// html page rendering
void renderPage() {
String webPage = "";
String relay_state="";
webPage = "<html><head><link rel=\"stylesheet\" href=\"https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css\">";
webPage += "<script src=\"https://code.jquery.com/jquery-1.11.3.min.js\"></script>";
webPage += "<script src=\"https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js\"></script></head>";
webPage += "<body><h1>ESP8266 Relay Web Server</h1>";
for (int relayIndex = 0; relayIndex<sizeof(pin_relays)/sizeof(uint8_t); relayIndex++) {
relay_state="";
if (digitalRead(pin_relays[relayIndex])) {
relay_state="checked";
}
webPage += "<p>Relay #" + String(relayIndex) + " ( GPIO" + String(pin_relays[relayIndex]) + " ) <input type=\"checkbox\" " + relay_state + " data-role=\"flipswitch\" onchange=\"window.location.href='/?relay=" + String(relayIndex) + "'\"></p>";
}
webPage += "</body></html>";
server.send(200, "text/html", webPage);
}
// handling requests
void handle_root() {
if (server.hasArg("relay")) {
int relayIndex = server.arg("relay").toInt();
digitalWrite(pin_relays[relayIndex], !digitalRead(pin_relays[relayIndex]));
Serial.print("Relay ");
Serial.print(relayIndex);
Serial.print(" state changed to ");
Serial.println(digitalRead(pin_relays[relayIndex]));
}
renderPage();
}
void setup(void){
// preparing GPIOs
for (int relayIndex = 0; relayIndex<sizeof(pin_relays)/sizeof(uint8_t); relayIndex++) {
pinMode(pin_relays[relayIndex], OUTPUT);
digitalWrite(pin_relays[relayIndex], DEFAULT_STATE);
}
//Turn on serial output
delay(1000);
Serial.begin(115200);
WiFi.begin(ssid, password);
Serial.println("");
// Wait for connection
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
// logging to serial output
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
// web server setup
server.on("/", handle_root);
server.begin();
Serial.println("HTTP server started");
}
void loop(void){
server.handleClient();
}Amit még megjegyeznék, hogy ez a kód Wemos D1 mini-re készült. Sima ESP8266-on a D1, D2, stb. PIN-ek nincsenek definiálva (csak d1, d1 mini, nodemcu és wifinfo esetén).
[ Szerkesztve ]
Alex
-
Janos250
őstag
válasz vargalex #5767 üzenetére
Nekem is tetszik
Egy kérdés:
Mivel az ilyesmit többnyire telefonról irányítják, a drága mobilneten keresztül, érdemes azért a pici
részért jqueryt használni?Meg egy másik:
Te hogyan oldod meg a UPC router mögötti elérést, ahol változik az IP cím? Nekem a dyndns elvileg bevált, de az a baj, hogy hiába ad új IP-t a dyndns, az állomások még egy darabig a régit használják.
Kénytelen vagyok fix IP címen lévő masinára irányítani, ami átirányít az éppen aktuális IP címre, de biztos lehet ezt valahogy egyszerűbben.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
vargalex
félisten
válasz Tankblock #5770 üzenetére
Igen, éppen tegnap este vettem észre, hogy a <html> és a <body> TAG-ek lezárása hiányzik, de mobilról nem akartam javítást küldeni, mert elég nehézkes. Ma javítom, és berakom újra (azért nem most, mert most is csak mobilról vagyok). A server.send előtt kell hozzá fűzni a webPage-hoz.
Egyébként a böngészőket ilyen apróságok nem zavarják...[ Szerkesztve ]
Alex
-
Zoja™
őstag
Csak csatlakozni tudok az előttem szólóhoz, nagyon szépen köszönjük.
-
vargalex
félisten
Igyekeztem teljesen dinamikusra írni. Azaz, a relék GPIO-it elegendő csak a pin_relays tömbbe felvenni, a többi (weboldalon a megfelelő gombok generálása, a kapcsolás) automatikusan történik a tömb alapján. A kód:
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#define DEFAULT_STATE LOW
// Replace with your network credentials
const char* ssid = "TP-Link";
const char* password = "asdf1234";
// GPIOs for controlling the relays
uint8_t pin_relays[] = { D1, D2 };
ESP8266WebServer server(80);
// html page rendering
void renderPage() {
String webPage = "";
String relay_state="";
webPage = "<html><head><link rel=\"stylesheet\" href=\"https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css\">";
webPage += "<script src=\"https://code.jquery.com/jquery-1.11.3.min.js\"></script>";
webPage += "<script src=\"https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js\"></script></head>";
webPage += "<body><h1>ESP8266 Relay Web Server</h1>";
for (int relayIndex = 0; relayIndex<sizeof(pin_relays)/sizeof(uint8_t); relayIndex++) {
relay_state="";
if (digitalRead(pin_relays[relayIndex])) {
relay_state="checked";
}
webPage += "<p>Relay #" + String(relayIndex) + " ( GPIO" + String(pin_relays[relayIndex]) + " ) <input type=\"checkbox\" " + relay_state + " data-role=\"flipswitch\" onchange=\"window.location.href='/?relay=" + String(relayIndex) + "'\"></p>";
}
server.send(200, "text/html", webPage);
}
// handling requests
void handle_root() {
if (server.hasArg("relay")) {
int relayIndex = server.arg("relay").toInt();
digitalWrite(pin_relays[relayIndex], !digitalRead(pin_relays[relayIndex]));
Serial.print("Relay ");
Serial.print(relayIndex);
Serial.print(" state changed to ");
Serial.println(digitalRead(pin_relays[relayIndex]));
}
renderPage();
}
void setup(void){
// preparing GPIOs
for (int relayIndex = 0; relayIndex<sizeof(pin_relays)/sizeof(uint8_t); relayIndex++) {
pinMode(pin_relays[relayIndex], OUTPUT);
digitalWrite(pin_relays[relayIndex], DEFAULT_STATE);
}
//Turn on serial output
delay(1000);
Serial.begin(115200);
WiFi.begin(ssid, password);
Serial.println("");
// Wait for connection
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
// logging to serial output
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
// web server setup
server.on("/", handle_root);
server.begin();
Serial.println("HTTP server started");
}
void loop(void){
server.handleClient();
}Látható, hogy a pin_relays tömb most 2 elemű, így a renderelt weboldal jelenleg így néz ki:
Ahogy a setup függvényben látható, alapban alacsony állapotra húzza az érintett GPIO-kat. Persze ez a kiindulási állapot a DEFAULT_STATE-ban módosítható.
[ Szerkesztve ]
Alex
-
-
Janos250
őstag
Tessék:
(A fene tudja, hogy hol mennyire harapósak a modik. A napokban a Google-n keresztül keveredtem véletlenül egy másik oldalon lévő szintén Arduino fórumra, ahol a firefox emlékezett, hogy oda én valamikor ősidőkben regisztráltam. Ha már ott voltam, hozzá akartam szólni. Kiderült, ki vagyok tiltva. Fogalmam sincs miért, de nagy zavart nem okozott)
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>const int ledPin = LED_BUILTIN;
ESP8266WebServer server(80); // szerver objektum letrehozasa
void handle_index() {
/* ezt hajtja végre, ha lekerjuk az oldalt
a http://192.164.4.1/?kapcsolo=be , vagy a
a http://192.164.4.1/?kapcsolo=ki
lekeressel.
Ami itt a fuggveny neve (jelenleg handle_index),
azt kell megadni a server.on -ban
jelenleg: server.on("/", handle_index);
a / jelenti, hogy a root.
Ha pl a http://192.168.4.1/kapcsoloproba modon is meg akarnank
hivni, akkor kellene egy
server.on("kapcsoloproba", valamikapcsoloprobanev);
es egy valamikapcsoloprobanev nevu fuggveny is, ami a hivaskor lefutna
*/String kapcsoloAllito = server.arg("kapcsolo");
if (kapcsoloAllito == "be"){
digitalWrite(ledPin, HIGH) ;
}
else if (kapcsoloAllito == "ki"){
digitalWrite(ledPin, LOW) ;
};String s = "<html>\r\n";
s += "<!DOCTYPE HTML>\r\n";s += "<head>\r\n";
s += "<meta charset=\"UTF-8\">\r\n";
s += "<title>Lampa kapcsolo FETtel</title>\r\n" ;
s += "</head>\r\n";s += "<body>\r\n";
s += " <font size =\"7\"> \r\n" ;s += " <a href=http://192.168.4.1/?kapcsolo=be> bekapcsolas" ;
s += " </a>\r\n" ;s += " <BR>\r\n"; // a <BR> a bongeszoben megjeleniteskor a
// kepernyon sort tor,
// a \r\n pedig a forrasszovegben tor sort,
// (ami a forrasnyelvi szoveg megjelenitesekor latszik)
// a kepernyon megjelenitesre nincs hatassal
s += " <BR>\r\n";s += " <a href=http://192.168.4.1/?kapcsolo=ki> kikapcsolas" ;
s += " </a>\r\n" ;s += " <BR>\r\n";
s += " <BR>\r\n";s += "</body>\r\n";
s += "</html>\n";server.send(200, "text/html", s); // Az s valtozo tartalmat kuldi el a kero
// szamitogepnek, amit a bongeszo megjelenit.
// A 200, "text/html" mindig ez, az s meg
// amit el akarunk kuldeni html szoveget.
// Ha nem html lapkent, hanem sima szovegkent
// akarjuk megjeleniteni, akkor "text/plain"
// kell a "text/html" helyere, a 200 marad es
// a harmadik parameter szinten marad szoveg
// tipusu valtozo, vagy szovegdelay(100);
}
void setup(void)
{
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW) ;delay(2000); // 2s késleltetés az ESP8266 feléledéshez
// a kovetkezo 4 sor mindig szukseges a setupban
WiFi.mode(WIFI_AP); // AccessPoint
WiFi.softAP("proba1","12345678"); // SSID, pw. SSID legyen mindenkinek kulonbozo!
server.begin(); // start the HTTP server
server.on("/", handle_index); // megadjuk, melyik fuggveny hajtodjon vegre,
// ha lekerjuk az oldalt
// a handle_index nev helyett barmi lehet
}void loop(void)
{
server.handleClient(); // ez mindig ez
}Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Írtam privát üzenetben egy régi mintaprogramot, mert nem akartam a fórumot terhelni vele. Próbáld ki! Ott vannak benne a kommentek, mert ez régen valakinek okításul szolgált.
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
De van, persze, de most hirtelenjében nem tudok küldeni.
pl. nézd meg ezt:
http://randomnerdtutorials.com/esp8266-web-server-with-arduino-ide/
Valamikor régen - ha jól emlékszem - talán Daszkalosznak hoztunk össze itt a fórumon közös erővel valami vezérlést, de már nem pontosan emlékszem mi is volt. Úgy rémlik, az is valami relé kapcsolgatás volt, aminek az időzítését WEBről lehetett beállítani, de már nem nagyon emlékszem.
Egy ismerősöm éppen most csinálta egy Sonoffra (szintén ESP8266, de 230 V-os relével) a távoli vezérlést interneten keresztül. Majd ha találkozok vele, mondom neki, hogy tegye már fel valahova, szerintem pár embernek hasznos lenne.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Hú, de elbonyolítottad!
Ezek a "mindenre jó" kész frameworkök
(
#include <ESP8266Ping.h>
#include "Timer.h"
#include <aREST.h>
#include <aREST_UI.h>
)
lehetnek persze kényelmesek, de részben az általánosság miatt hatalmasak, részben sokkal több időbe telik megtanulni, mintha alap programozással csinálnád.Én nem vagyok híve annak, hogy az Androidot is belekeverjük a vezérlésbe, helyette böngészőből megnyitva a WEB lapot, azt preferálom. Egyszerűbb, általánosabb.
Az ESP8266 elég jól használható WEB-en keresztüli vezérlésekre, én nagyon kedvelem.
Kényelmes akkor is, ha az adott WiFi hálón belülről akarom elérni, akkor is, ha kinnről, a routeren keresztül.
Ha meg állandóan változik az IP cím (pl. otthoni UPC), akkor dyndns, vagy valami saját megoldás, ha van hozzáférésed fix IP című helyhez.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Zoja™
őstag
válasz MasterMark #5753 üzenetére
Akarom én, csak hiányos a tudásom hozzá.
-
Pubszon
veterán
Csak azt nem értem, hogy egy 20 éves Casio karóra 10 év alatt tédev egy másodpercet, akkor ezt hogy a fenébe nem tudják megcsinálni?
Mindegy, kettő úton van, megpróbálom megcsinálni, hogy könnyen tudjam beállítani és korrigálni.ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
-
Zoja™
őstag
Uraim, megjött a Wemos D1-em, amivel ma tudtam kicsit játszani.
Egy relé kapcsolgatásával kezdtem az ismerkedést, de valamiért fordítva működik.Alapból bekapcsolt helyzetből indul, ON-ra kikapcsol, OFF-ra pedig be.
Itt a kód, ha vetnétek rá egy pillantást, hogy mi a hiba azt nagyon megköszönném.
// Import required libraries
#include <ESP8266WiFi.h>
#include <ESP8266Ping.h>
#include "Timer.h"
#include <aREST.h>
#include <aREST_UI.h>
// Create aREST instance
aREST_UI rest = aREST_UI();
// WiFi parameters
const char* ssid = "*********"; //Change the stars with your SSID
const char* password = "********"; //Change the stars with your password
Timer t;
IPAddress ip(192,168,0,109); //The static IP you'd like your lamp to get from the router
IPAddress gateway(192,168,0,1);
IPAddress subnet(255,255,255,0);
// The port to listen for incoming TCP connections
#define LISTEN_PORT 80
// Create an instance of the server
WiFiServer server(LISTEN_PORT);
// Variables to be exposed to the API
int ledControl(String command);
void checkwithPing()
{
Serial.print("Pinging ip ");
Serial.println(gateway);
if(Ping.ping(gateway)) {
Serial.println("Success!!");
Serial.println(Ping.averageTime());
} else {
Serial.println("Error :(");
ESP.reset();
}
}
//SETUP -- SETUP -- SETUP -- SETUP -- SETUP -- SETUP -- SETUP -- SETUP --
//SETUP -- SETUP -- SETUP -- SETUP -- SETUP -- SETUP -- SETUP -- SETUP --
void setup()
{
// Start Serial
Serial.begin(115200);
// Set the title
rest.title("8/61 ");
// Create button to control pin 5
rest.button(5);
// Function to be exposed
rest.function("led", ledControl);
// Give name and ID to device
rest.set_id("1");
rest.set_name("esp8266");
// Connect to WiFi
WiFi.begin(ssid, password);
WiFi.config(ip, gateway, subnet);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
// Start the server
server.begin();
Serial.println("Server started");
// Print the IP address
Serial.println(WiFi.localIP());
t.every(10000, checkwithPing); //Check if connected every 10 seconds
}
void loop()
{
t.update();
// Handle REST calls
WiFiClient client = server.available();
if (!client) {
return;
}
while (!client.available()) {
delay(1);
}
rest.handle(client);
}
int ledControl(String command) {
// Print command
Serial.println(command);
// Get state from command
int state = command.toInt();
digitalWrite(5, state);
return 1;
}[ Szerkesztve ]
-
Janos250
őstag
Tudtommal csak a sebesség a lényeg. Azt viszont tudod állítani.
Ha 3.3-on megy, akkor a kisebb órajelet kell beállítani. A nagyobbat csak 5V-on bírja.
Tudomásom szerint az IC 3.3-on és 5V-on egyaránt működik.
Azért biztos nem vagyok ezekben, mert a kicsi kínaiak fene tudja, mikor mit okoskodnak.[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
nagyúr
Más: rendeltem egy pro micro board-ot, ma kaptam meg (nem sparkfun, hanem kínai utánzat). 5V/16MHz szerepelt a leírásban az adatlapon, de a rajta lévő jumper nincs összeforrasztva, ami - ha jól értelmezem a gugli által kidobott leírásokat - azt jelenti, hogy 3V3/8MHz módban van. Tud vki segíteni, hogy most akkor mi is van? Nem akarom brickelni.
Az arduino mappában lévő arduino micro driver települt hozzá, a boards listában csak a sparkfun pro micro-nál lehet választani az 5V/16MHz és a 3V3/8MHz processzort, az arduino micro-nál nem. -
Bazs87
tag
válasz Pubszon #5734 üzenetére
én is próbálkoztam már ezzel, illetve a 1302-vel is. Hiába csúfolják nagyobb pontosságúnak, ugyanúgy sikerült összehoznom vele fél év alatt kb 40 percet folyamatos táp alatt.
Inkább ntp, vagy [link]
az ntp-t eddig csak plcn és win alatt próbálgattam, a másikat is csak tervezem, de biztosan stabilabb mint egy rtc.
-
Pubszon
veterán
-
Pubszon
veterán
Ezzel a DS1307-es modullal mi a tapasztalat?
Könnyű használni? Tölti az akkut? Mennyire pontos?ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
-
Tankblock
aktív tag
Hello,
Értem én, abba gondoltam bele, hogy 1 vezeték félre és a tápra is 5V megy, aztán jön a mágikus füst...
Jobb a békesség. Főleg az esp-01 moduloknál, ha belekavarodsz melyik láb melyik.Megjött az esp32 öm... Eddig tetszetős. Mondjuk a Framework kívül egy blinking LED lett csak használva. Ennyi időm volt Elsőre ment minden ( nem úgymint anno az esp8266 al )
[ Szerkesztve ]
Release the Beast....
-
nagyúr
válasz Tankblock #5729 üzenetére
Annyit hadd tegyek hozzá, hogy egy csomó utánaolvasás után kijelenthetem, hogy az esp8266 lábai 5v toleránsak (a gyár egyik tervezőmérnöke mondta ezt, úgyhogy hiszek neki). A tápfeszültség természetesen csak 3v3 lehet a beépített flash miatt.
Nem védődióda van a bemeneteken, hanem snap back védelem. -
Tankblock
aktív tag
válasz JohnnyX #5725 üzenetére
Hello
Wifi modul nem 5V toleráns, szintillesztő nélkül mágikus felhő lesz.
5V to 3V3 logic level Converter kell [link]
Keress/találj ki egy projectet, csináld meg.
Törekedj az egyszerűségre főleg az elején, hogy érsd meg az alapelveket, protokollokat, esetleg a HW rejtelmeit/regisztereket.Utána mehet a wifi is, és ha mégis jön a füst akkor se add fel, abból is lehet tanulni, főleg abból
Eddig a mérleg -3 Nano -> most várom a Diódákat hozzá, hogy megjavítsam....
[ Szerkesztve ]
Release the Beast....
-
Janos250
őstag
Még annyi, hogy a leghasznosabb infokat a drónos topicokban kaphatod. Sajnos amiket bemutatnak, az elvétve megy, mert olyan együttállása kell a "csillagoknak", ami Eu-ban igen ritkán teljesül. Pl min. 7 hold min 38 db jelerősséggel, és megfelelő szögekben, ami naponta néhányszor negyedóráig teljesül. Nekem eddig kétszer sikerült kb. 10-10 perces ilyen időszakot kifognom.
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz JohnnyX #5725 üzenetére
Az én véleményem:
1. alaplap : az is jó , de ha WiFi-t is akarsz próbálni, akkor inkább valamelyik nodemcu, vagy Wemos, pl.
http://www.ebay.com/itm/NodeMcu-Lua-CH340G-ESP8266-WIFI-Internet-Development-Board-Module-/262136737901?hash=item3d0891306d:g:j-MAAOSwmLlX4h~82. az a készlet annyit megér, és jó is lesz.
3. a WiFi lap helyett vagy az elsőként említett panel, vagy ha ügyesen forrasztasz, akkor:
ESP12EMajd még a későbbiek folyamán szükséged lesz egy marék csatlakozó vezetékre (egyebek mellett):
pl
mégpedig 3 félére: male-male, female-female, male-female.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
JohnnyX
őstag
Hali!
Belevagnek az arduinozasba.
Segitseget szeretnek kerni, hogy az altalam kiszemelt 3 kutyu kompatibili-e egymassal,
illetve hogy ha ezeket beszerzem akkor tudok mar kezdeni valamit veluk?
Alaplap
Starter kit
Wifi modulElore is koszonom
_Z87-Extreme3_-_4670k_-_16Gb_-_1050Ti_
-
Janos250
őstag
"A hajón lévő egység pedig a válaszidőből számolná a távolságot"
Na, ez nem fog menni amatőr módszerekkel. Hasonlóan dolgozik a GPS.
A geodéziai GPS-ek pontosak, de annak még az antennája is többszáz $. Egy geodéziai GPS néhány millió Ft.
Lehet persze faragni a mindenféle rárakódó díjakból, hogy olcsóbb legyen, de akkor is elég drága lesz.
Továbbá, ha nem vagy földmérőként (drágán) regisztrálva, a korrekciós adatokat se kapod meg, hiába fizetnél (próbáltam)
Meg lehet csinálni GPS-sel, hiszen a földmérők is megcsinálják, de az nagyon pénzízű lesz!Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Bazs87
tag
Sziasztok!
A másik téma pedig valamilyen pozícionálás lenne. Gondolkodtam GPS-en, de ott ugye pozíciókorrekció nélkül főleg hobby tartományban a fél méteres pontosság nem reális.
Olyasmire gondoltam, hogy első etetés alkalmával otthagynék egy bólyát, ami a vízen lebeg és benne valamilyen wireless - lehetőleg passzív - egységet.
A hajón lévő egység pedig a válaszidőből számolná a távolságot. (jobb esetben 2 a hajó elején és hátulján is, így egyszerűbben bemérhető a kívánt irány, persze az elmélet szép, de a gyakorlat valszeg mást mutat a mérési hibák miatt)Ti csináltatok már ilyesmit? Egyáltalán hobbyeszközökkel van erre lehetőség?
Milyen HW-t ajánlanátok ehhez?
-
tvamos
nagyúr
Az, hogy egy rakas adatot at kell kuldeni a wifi-n, ami szamodra nem hasznos informacio. Az nRF-en meg kuldesz 10 byte-ot csomagonkent, oszt jovan. (Ennyire azert ez sem egyertelmu, de majdnem.)
[ Szerkesztve ]
"Mindig a rossz győz, és a jó elnyeri méltó büntetését." Voga János
-
quint
aktív tag
válasz Gergosz2 #5714 üzenetére
Max igaz, hogy az L298 bázisú megoldások leginkább akkor jók, ha csak az van a fiókban Ámbár akkor is nagyon el lehet tévedni, ha az ember például egy 6 voltos motort például 5 voltos tápegységről akar járatni, és csak csodálkozik, hogy mitől olyan gyenge a motor -> mert max kitöltésnél is csak kábé 3.5 volt jut a motorra...
Picikhez (12V 1.2A) jelenleg egy nagyon jó motorvezérlőt ismerek, a TB6612FNG-t. Pici, aranyos, gyors (100 kHz-es PWM-hez is jó), alacsony a vesztesége (0.6 ohmos csatorna ellenállás). Esetleg ismersz valami mást is ebben a teljesítmény- és árkategóriában?
-
tvamos
nagyúr
Ha nagy range kell, akkor probald meg akkor GSM modemmel, az menne az egesz orszag teruleten, ugyis, ha te Miskolcon vagy, az etetohajo meg a Tisza tavon.
Amugy a wifi-nek eleg nagy az overhead-je, egy jol belott, kulso antennas NRF24L01 modullal szerintem egyszerubb jo eredmenyt elerni, mint wifi-vel. Itt van pl. ez, ok kapasbol ra merik irni az 1100m-t. [link] Ha jo kinai modon, csak a nagyade igaz, akkor is 2750m. Vagy itt ez a jopofa projekt: [link] Viccesek ezek a video-k is: [link] [link]
Egy szo mint szaz, en taviranyitani egy kulso antennas NRF24L01 modult hasznalnek."Mindig a rossz győz, és a jó elnyeri méltó büntetését." Voga János
-
Bazs87
tag
válasz Gergosz2 #5716 üzenetére
ha lenne rendes hálózat némi perverzióval lehetne direktben a telefonról vezérelni, nem kellene mindkét oldalon arduino, elég lenne csak az 1-iken. Emiatt gondolkodtatott el az ötlet.
Hosszabb távon az lenne a terv, hogy gps v vmilyen kicsit komolyabb lowcost pozícionálással visszatérjen az etetőhelyre automatikusan stb. De mivel min 0,5 m-es pontosság kellne, így elgondolkodtató merre tovább. Kód lenne benne valószínűleg bőven.Arduino fronton eddig mindig nanoban gondolkodtam, megnézem az általad tanácsolt minit is mindenképp.
Talán a legfőbb érv arduino mellett az 5V tápfesz (szinte mindenem van otthon ehhez). -
Gergosz2
veterán
Wemos D1 mini prora lehet külső antennát tenni. De szerintem eléggé overkill lenne, ha csak egy nyitó/záró parancsot akarsz átvinni.
Én egy NRF24L01+ Arduino pro mini @ 8mhz kombóval próbálkoznék. Low power és a szintillesztéssel sem kell foglalkozni.
Nokia 6030 Hardcore User // I Panic Restaurant by Taito
-
Gergosz2
veterán
válasz DrojDtroll #5708 üzenetére
Én még annyit tennék, hozzá, hogy L289-at elfelejthetnéd. Baromi régi IC elég nagy droppal. Személy szerint csak léptetőmotoros cuccoknál használnám, mert ott úgyis baromi rossz a hatásfok, nem oszt/szoroz egy másik IC.
De fordulatszám szabályozott üzemben DC vagy egyéb gépeknél azért nem árt ha kicsit értelmesebb IC-t választ az ember.
(#5712) Bazs87
Kapni 2dB-es antennálval szerelt példányt is. [link] Ezek jók, nem egy videót láttam, hogy RC cuccokhoz ezt használják. Én szeretem ezt az IC-t, nekem bejött. 250kbs-en, max levelen bőven 100 felett lesz.
[ Szerkesztve ]
Nokia 6030 Hardcore User // I Panic Restaurant by Taito
-
nagyúr
Most ismerkedem az esp-vel és olvastam egy cikket (most nem találom), hogy nyílt terepen az elvi 100m-es hatósugarú wifivel 1km-es hatótávot is el lehet érni (valami európai farmer csinált egy öntözőrendszert vele).
Márpedig a hajók jellemzően nem magas házak vagy vasbeton falak közt szoktak közlekedni. -
Bazs87
tag
Sziasztok!
Egy etetőhajó tervein gondolkodva ugrott be nekem az NRF24L01 rádiós komm modul. Ismerősöm lefújogta, mert az elvi 100 méteres hatótávot kevesli.
Nincsen valamilyen egyéb ötletetek rá, aminek nagyobb a hatótávolsága? -
tvamos
nagyúr
válasz DrojDtroll #5708 üzenetére
No, akkor mostmar tudsz mindent. Siman ra lehet kotni a 3.3V-os kimenetet a kis motorvezerlod bemenetere.
(#5704) quint válasza DrojDtroll (#5703) üzenetére
Nagyon szep leiras. nekem nincs turelemem az ilyen reszeletes kifejtesekhez.[ Szerkesztve ]
"Mindig a rossz győz, és a jó elnyeri méltó büntetését." Voga János
-
quint
aktív tag
válasz Janos250 #5705 üzenetére
Csak DC motorra vonatkozik a leírás. Viszont nagyon jó, hogy kérdeztél, mert egy hibát elkövettem az #5704-ben
A szabadonfutó -> EN=0;
Fékezés (viszonylag gyors leállás, nehezebb elforgatás): IN1 = IN2 (tehát LL és HH esetén is, mert ilyenkor a vezérlőn keresztül a motor tekercse rövidre záródik, egy indukciós fék keletkezik). -
-
quint
aktív tag
válasz DrojDtroll #5703 üzenetére
Nem akarlak piszkálni, de szerintem rosszul képzeled el a modul működését. Pár szóban DC motorhoz:
Táplálás (a modul jelöléseit használva):
GND: föld (közös pont aurduino és motor tápegység)
+12V: motor tápegység, nem szerencsés elnevezés, mert 35V-ig akármekkora lehet, de mégis van egy kicsi szerepe a "12V"-nak is:
+5V: ez tényleg +5V, de lehet kimenet és bemenet is ->
- ha legfeljebb 12V-os a motortáp, akkor a bal felső sarokban (a kék sorkapcsok között) lévő jumper a helyén maradhat -> ekkor az L298 számára a panelen lévő stabilizátor állítja elő a logikai +5V-ot, és ez az 5V megjelenik a hivatkozott csatlakozón is (felhasználható például az arduino direkt taplálására, de ekkor nem lehet az arduinonak más tápja, csak ez);
- ha 12V-nál nagyobb feszültségű a motortáp, akkor a jumpert el kell távolítani, és kívülről kell +5V-ot adni a modulnak a logikai rész működéséhez.Vezérlés (az L298 1.5V alatt logikai L-nek, 2.5V felett logikai H-nak tekinti a bemenő jelet):
például az A motorhoz
ENA: tiltja (L) vagy engedélyezi (H) az A motort
a jumpert el kell távolítani, ha vezérelni akarod a sebességet! PWM jellel (lsd. később) a sebesség állítható.
IN1 és IN2 az üzemmódot állítja be:
L és L -> szabadonfutó (nem hajtott, nem fékezett);
L és H -> egyik irányba hajt;
H és L -> másik irányba hajt;
H és H -> befékez.megjegyzés a PWM jelhez: A motor sebességét tudod vezérelni az ENA-ra adott PWM jellel. Ennél teljesen mindegy, hogy mekkora a logikai H szint (nálad picit 3.3V alatt, UNO esetében valamivel 5V alatt), illetve a multimétereddel mérhető átlagos analóg jelszint. Az számít, hogy a teljes ciklusidőből hány százaléknyi ideig magas a jelszint; ez és a motor tápfesz szorzata határozza meg, hogy ténylegesen mekkora feszültség kerül a motorra (AVG, a teljesítmény a négyzetével lesz arányos - RMS).
Ha te is így gondoltad/tudtad, akkor bocs' a litániáért...
[ Szerkesztve ]
-
tvamos
nagyúr
válasz DrojDtroll #5701 üzenetére
A VCC-t mindig te adod meg. Rákötsz valamit, és az annyi.
Pontosan mit kell rákötni a due-ra.
[ Szerkesztve ]
"Mindig a rossz győz, és a jó elnyeri méltó büntetését." Voga János
Új hozzászólás Aktív témák
Hirdetés
- Poco X6 Pro - ötös alá
- Miskolc és környéke adok-veszek-beszélgetek
- Abarth, Alfa Romeo, Fiat, Lancia topik
- Hogy is néznek ki a gépeink?
- PlayStation 5
- Honor 200 Pro - mobilportré
- Digitális Állampolgárság Program
- Mesterséges intelligencia topik
- Path of Exile 2
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- További aktív témák...
- Nintendo Switch OLED 19.0.1 Dual-Boot Cfw + 128GB MicroSD + Atmosphere 1.8.0, 3 hó garival!
- XBOX ONE S 1TB, dobozában, gyári tarozékaival és 6 hó garanciával, Bp-i üzletből!
- XBOX ONE X 1TB, makulátlan szép állapotban, 6 hó teljeskörű és 1 év SW garanciával Bp-i üzletből!!
- XBOX Series X, dobozában, gyári tartozékaival, 2025.06.28.-ig gyári garancia!! Bp-i üzletből eladó!
- GIGABYTE Nvidia Geforce GTX 1080 TI Aorus
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Axon Labs Kft.
Város: Budapest