HobbyCNC fórum
v0.9.6 Régi HobbyCNC oldal: http://archiv.hobbycnc.hu

Új regisztráció / Átregisztráció a régi fórumról
    
   

 
Arduino



 

Időrend:
Oldal 27 / 42 Ugrás ide:
Sorok:
|◄ Első  ◄ Előző   23  24  25  26  27  28  29  30  31   Következő ►  Utolsó ►|

  Fórum főoldal  |  A lap aljára

frob | 2339    2017-11-07 11:11:39 [760]

Sziasztok

Mi lehet a hiba amiért nem jön meg aminek kellene?
szam=inputString.substring(0,2).toInt()

A bemenet pl "001" de 111 re sem ad vissza semmit...

Előre is köszi!


Kristály Árpád | 3085    2017-10-24 20:01:11 [759]

Köszönjük!

Előzmény: Törölt felhasználó, 2017-10-24 00:11:17 [757]


Messer | 537    2017-10-24 08:52:45 [758]

Köszönet...

Előzmény: Törölt felhasználó, 2017-10-24 00:11:17 [757]


Törölt felhasználó    2017-10-24 00:11:17 [757]

grbl sdcard version

http://www.cnc-club.ru/forum/viewtopic.php?f=41&t=16194&sid=e8343d33ac7b6fdc4a66c7e0ae4be146


frob | 2339    2017-10-23 21:50:43 [756]

arduino - grbl
segédlet
hátha valakinek jól jön..

Törölt felhasználó    2017-10-22 10:48:50 [755]

Többen is keresték Arduino EDM (hazug szikra)

https://www.youtube.com/user/TheWireEDM


Törölt felhasználó    2017-10-22 10:16:28 [754]

elég sokat tud atol fügetlenül hogy free...

Előzmény: remrendes, 2017-10-22 08:12:13 [753]


remrendes | 4256    2017-10-22 08:12:13 [753]

Ez nem rossz...

Előzmény: Törölt felhasználó, 2017-10-21 21:53:06 [752]


Törölt felhasználó    2017-10-21 21:53:06 [752]

GrblGru... vezérlö cam... szimulátor mill... turn..

http://www.cnczone.com/forums/uncategorised-cam-discussion/311876-cnc-forum.html

videok

https://www.youtube.com/channel/UC4_AHkEVDWNWW61ZW4qBHWA/videos?disable_polymer=1


Törölt felhasználó    2017-10-17 20:48:29 [751]

az nem !
de kodrészt linkeltem ugy könyebb megtalálni beszurást!

Előzmény: Amatőr, 2017-10-17 20:28:17 [750]


Amatőr | 2184    2017-10-17 20:28:17 [750]

Tuti! Az utolsó sor talán nem is fontos.

Előzmény: Törölt felhasználó, 2017-10-17 20:15:39 [749]


Törölt felhasználó    2017-10-17 20:15:39 [749]

igy jobb..........

void loop()
{

lcd.setCursor(0,0);
lcd.print(analogRead(0));
lcd.print(" ");
lcd.setCursor(9,1); // move cursor to second line "1" and 9 spaces over
lcd.print(millis()/1000); // display seconds elapsed since power-up


Előzmény: Amatőr, 2017-10-17 19:55:27 [748]


Amatőr | 2184    2017-10-17 19:55:27 [748]

Ezt hamar megoldottad!

Előzmény: Törölt felhasználó, 2017-10-17 19:54:02 [747]


Törölt felhasználó    2017-10-17 19:54:02 [747]

lcd.begin(16, 2); // start the library
lcd.setCursor(0,0);
//lcd.print("Push the buttons"); // print a simple message
lcd.print(adc_key_in);


Amatőr | 2184    2017-10-17 19:48:05 [746]

Ezt elmentem, majd átfaragom hogy ne a soros portra hanem az lcd-re írja ki az értéket. Így könnyű tesztelni a gombokat!

Előzmény: Törölt felhasználó, 2017-10-17 19:39:10 [744]

Amatőr | 2184    2017-10-17 19:46:31 [745]

Ezt nem hiszem hogy hamar át tudnám fordítani arduinora, bár már pedzem a lényegét. Köszi!

Előzmény: Csuhás, 2017-10-17 19:23:56 [742]


Törölt felhasználó    2017-10-17 19:39:10 [744]

//Sample using LiquidCrystal library
#include <LiquidCrystal.h>

/*******************************************************

This program will test the LCD panel and the buttons
Mark Bramwell, July 2010

********************************************************/

// select the pins used on the LCD panel
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

// define some values used by the panel and buttons
int lcd_key = 0;
int adc_key_in = 0;
#define btnRIGHT 0
#define btnUP 1
#define btnDOWN 2
#define btnLEFT 3
#define btnSELECT 4
#define btnNONE 5

// read the buttons
int read_LCD_buttons()
{
adc_key_in = analogRead(0);
Serial.println(adc_key_in);
delay(10);
// read the value from the sensor
// my buttons when read are centered at these valies: 0, 144, 329, 504, 741
// we add approx 50 to those values and check to see if we are close
if (adc_key_in > 1000) return btnNONE; // We make this the 1st option for speed reasons since it will be the most likely result
// For V1.1 us this threshold
if (adc_key_in < 50) return btnRIGHT;
if (adc_key_in < 250) return btnUP;
if (adc_key_in < 450) return btnDOWN;
if (adc_key_in < 650) return btnLEFT;
if (adc_key_in < 850) return btnSELECT;

// For V1.0 comment the other threshold and use the one below:
/*
if (adc_key_in < 50) return btnRIGHT;
if (adc_key_in < 195) return btnUP;
if (adc_key_in < 380) return btnDOWN;
if (adc_key_in < 555) return btnLEFT;
if (adc_key_in < 790) return btnSELECT;
*/


return btnNONE; // when all others fail, return this...
}

void setup()

{

Serial.begin(9600);

lcd.begin(16, 2); // start the library
lcd.setCursor(0,0);
lcd.print("Push the buttons"); // print a simple message
}

void loop()
{
lcd.setCursor(9,1); // move cursor to second line "1" and 9 spaces over
lcd.print(millis()/1000); // display seconds elapsed since power-up


lcd.setCursor(0,1); // move to the begining of the second line
lcd_key = read_LCD_buttons(); // read the buttons

switch (lcd_key) // depending on which button was pushed, we perform an action
{
case btnRIGHT:
{
lcd.print("RIGHT ");
break;
}
case btnLEFT:
{
lcd.print("LEFT ");
break;
}
case btnUP:
{
lcd.print("UP ");
break;
}
case btnDOWN:
{
lcd.print("DOWN ");
break;
}
case btnSELECT:
{
lcd.print("SELECT");
break;
}
case btnNONE:
{
lcd.print("NONE ");
break;
}
}

}


Törölt felhasználó    2017-10-17 19:36:54 [743]

ez sorosportra kiirja azt a nyomogomb értékétet amit lenyomsz!

//Sample using LiquidCrystal library
#include <LiquidCrystal.h>

/*******************************************************

This program will test the LCD panel and the buttons
Mark Bramwell, July 2010

********************************************************/

// select the pins used on the LCD panel
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

// define some values used by the panel and buttons
int lcd_key = 0;
int adc_key_in = 0;
#define btnRIGHT 0
#define btnUP 1
#define btnDOWN 2
#define btnLEFT 3
#define btnSELECT 4
#define btnNONE 5

// read the buttons
int read_LCD_buttons()
{
adc_key_in = analogRead(0);
Serial.println(adc_key_in);
delay(10);
// read the value from the sensor
// my buttons when read are centered at these valies: 0, 144, 329, 504, 741
// we add approx 50 to those values and check to see if we are close
if (adc_key_in > 1000) return btnNONE; // We make this the 1st option for speed reasons since it will be the most likely result
// For V1.1 us this threshold
if (adc_key_in < 50) return btnRIGHT;
if (adc_key_in < 250) return btnUP;
if (adc_key_in < 450) return btnDOWN;
if (adc_key_in < 650) return btnLEFT;
if (adc_key_in < 850) return btnSELECT;

// For V1.0 comment the other threshold and use the one below:
/*
if (adc_key_in < 50) return btnRIGHT;
if (adc_key_in < 195) return btnUP;
if (adc_key_in < 380) return btnDOWN;
if (adc_key_in < 555) return btnLEFT;
if (adc_key_in < 790) return btnSELECT;
*/


return btnNONE; // when all others fail, return this...
}

void setup()

{

Serial.begin(9600);

lcd.begin(16, 2); // start the library
lcd.setCursor(0,0);
lcd.print("Push the buttons"); // print a simple message
}

void loop()
{
lcd.setCursor(9,1); // move cursor to second line "1" and 9 spaces over
lcd.print(millis()/1000); // display seconds elapsed since power-up


lcd.setCursor(0,1); // move to the begining of the second line
lcd_key = read_LCD_buttons(); // read the buttons

switch (lcd_key) // depending on which button was pushed, we perform an action
{
case btnRIGHT:
{
lcd.print("RIGHT ");
break;
}
case btnLEFT:
{
lcd.print("LEFT ");
break;
}
case btnUP:
{
lcd.print("UP ");
break;
}
case btnDOWN:
{
lcd.print("DOWN ");
break;
}
case btnSELECT:
{
lcd.print("SELECT");
break;
}
case btnNONE:
{
lcd.print("NONE ");
break;
}
}

}

Előzmény: Amatőr, 2017-10-17 19:18:14 [741]


Csuhás | 6750    2017-10-17 19:23:56 [742]

Nem vagyok duinos ezért pszeudó kód:
Define b as byte
define sum as integer

.....

sum:=0;
For b:=1 to 4
sum=sum+getadc(0);
delay(5)
next
sum:=sum/4
print sum

....

Ez egy kicsit megszűri az ad értékeit, és kiírja. Ezután végignyomkodva a gombokat látod hol mi jön vissza. Így annak alapján tudod a gomb kiválasztás határértékeit a gombok értékei közé középre állítani.

Előzmény: Amatőr, 2017-10-17 19:07:17 [739]


Amatőr | 2184    2017-10-17 19:18:14 [741]

Igen, ez a része érthető. Kimérem az ellenállásokat, az majd segít. Köszi!

Előzmény: Törölt felhasználó, 2017-10-17 19:14:58 [740]


Törölt felhasználó    2017-10-17 19:14:58 [740]

Hogy kicsit megérd az elvet

Analog benenet érték 0...1023 értéken mozog 0...5v
az elenálás létra fesz osztóként müxik

pl ha rosz az elenálás érték a pcb verzion akor rosz a definiált érték határ a kodban is ezért reagálhat is rosszul!
pl
if (adc_key_in < 195) return btnUP;
lehet ez lesz helyes
if (adc_key_in < 250) return btnUP;

Előzmény: Amatőr, 2017-10-17 19:05:55 [738]


Amatőr | 2184    2017-10-17 19:07:17 [739]

Csuhás kolléga azt hiszem túlbecsülöd a képességeim. Az elképzelést értem, de a kivitelezéséhez még kevés vagyok.

Előzmény: Csuhás, 2017-10-17 18:42:38 [735]


Amatőr | 2184    2017-10-17 19:05:55 [738]

Ez jó lesz, most már tudom hova tegyem a késleltetést, nagyon köszönöm!
Legjobb lesz ha rámérek az ellenállás létrára, úgy kiderül melyik verzió kell.

Előzmény: Törölt felhasználó, 2017-10-17 18:56:27 [737]


Törölt felhasználó    2017-10-17 18:56:27 [737]

adc_key_in = analogRead(0);

delay(10);


van 2 verzio aminél az analog értékek más a verzio pcb az elenálások is valoszinü de ezt irja is a mintakod!

az egyik

if (adc_key_in < 50) return btnRIGHT;
if (adc_key_in < 250) return btnUP;
if (adc_key_in < 450) return btnDOWN;
if (adc_key_in < 650) return btnLEFT;
if (adc_key_in < 850) return btnSELECT;

másik
if (adc_key_in < 50) return btnRIGHT;
if (adc_key_in < 195) return btnUP;
if (adc_key_in < 380) return btnDOWN;
if (adc_key_in < 555) return btnLEFT;
if (adc_key_in < 790) return btnSELECT;

de csak az egyiket használd egyszere!
idézö jelböl kivéve a kod tömböt aktiv lesz:

/*

*/

Előzmény: Amatőr, 2017-10-17 18:36:33 [733]


kaqkk007 | 1567    2017-10-17 18:47:43 [736]

Így már más a leányzó fekvése én tényleg a mátrixra gondoltam de mint az előttem szóló írta használj prellmentesítést , én a picben úgy csinálnám hogy nem értéket hanem tartományt adnék meg majd a beolvasás után figyelném hogy az adc mikor ment 0 ra és onnan indítanám a következő mérést

Előzmény: Amatőr, 2017-10-17 18:31:54 [731]

Csuhás | 6750    2017-10-17 18:42:38 [735]

Csináld azt hogy néhányszor végzel egymás után ad konverziót pár mS késleltetéssel majd az átlagot használod fel, vagy addig olvasod az AD-t amíg három egymás utáni konverzió nem tér el egy limit értéknél jobban.

Előzmény: Amatőr, 2017-10-17 18:36:33 [733]


Amatőr | 2184    2017-10-17 18:37:18 [734]

Igen, ilyen.

Előzmény: Törölt felhasználó, 2017-10-17 18:35:42 [732]


Amatőr | 2184    2017-10-17 18:36:33 [733]

Az a kérdés hogy hova szúrjam be a késleltetést?
A gombok definíciója a szokásos:

#define btnRIGHT 0#define btnUP 1
#define btnDOWN 2
#define btnLEFT 3
#define btnSELECT 4
#define btnNONE 5 // read the buttons

int lcd_key = 0;
int adc_key_in = 0;
int addr = 0;

byte E;
byte H;


int read_LCD_buttons() {
adc_key_in = analogRead(0);
if (adc_key_in < 50) return btnRIGHT;
if (adc_key_in < 195) return btnUP;
if (adc_key_in < 380) return btnDOWN;
if (adc_key_in < 555) return btnLEFT;
if (adc_key_in < 790) return btnSELECT;
return btnNONE; // when all others fail, return this...


A gomb beolvasás például:
case btnLEFT: //4. case { { H = H + 1;
if ( H > E ) (E = E + 1 ); // H értéke nem haladhatja meg E-ét
lcd.setCursor(8, 0);
lcd.print(" ");
lcd.setCursor(8, 0);
lcd.print(E);
lcd.setCursor(8, 1);
lcd.print(" ");
lcd.setCursor(8, 1);
lcd.print(H);
EEPROM.write(1, H);
delay(200);
break;
}

Előzmény: Törölt felhasználó, 2017-10-17 18:29:13 [730]


Törölt felhasználó    2017-10-17 18:35:42 [732]

csak elenálás létra van nyomogomb okon A0 Bemeneten ha jolemlékszek...

https://www.dfrobot.com/wiki/index.php/Arduino_LCD_KeyPad_Shield_(SKU:_DFR0009)

amire gondolsz igen mátrix alapu 3x4 vagy 4x4 ...stb.

Előzmény: kaqkk007, 2017-10-17 17:34:51 [729]


Amatőr | 2184    2017-10-17 18:31:54 [731]

Sajnos kénytelen vagyok ezt használni, a keypad shield tartalmazza az ellenállásokat és a gombokat. Nem maradt elég bemenet mind az 5 gombnak egyesével.

Előzmény: kaqkk007, 2017-10-17 17:34:51 [729]


Törölt felhasználó    2017-10-17 18:29:13 [730]

nem tudom milyen kodot használsz a pergésre van szoftveres megoldás ha kell!
de a nyomogom részhez raghatsz pl kis késleltetést 10...30 mill sec...

delay(10);

Előzmény: Amatőr, 2017-10-17 17:16:27 [728]


kaqkk007 | 1567    2017-10-17 17:34:51 [729]

Hanyagold az ellenállás mérést , az arduinoban is van keypad mintapélda azt használd (én pices vagyok de a rendszer ugyan az ) a keypadnál azt figyeli mikor melyik két láb van összekötve a nyomobomb mátrixban

Előzmény: Amatőr, 2017-10-17 17:16:27 [728]


Amatőr | 2184    2017-10-17 17:16:27 [728]

Kedves Arduino szakik!
Adott egy UNO, keypad shield-el összecsatlakoztatva. A keypad gombjai az UNO analóg bemenetére kapcsolódnak, ellenállásméréssel határozza meg hogy melyik gombot nyomtam meg. A gond a következő: BtnUp gombra felfelé kéne számolnia, de a gomb elengedésekor néha lefelé is megteszi (erre is van gomb definiálva). Gondolom én hogy a nyomógomb prellezése okoz gondot. Hogyan lehetne kiküszöbölni?


PallMallMan | 447    2017-10-17 13:22:43 [727]

Keresek felprogramozott Buethoot modult cnc-zéshez.
Ajánlatokat privátban várok!


Törölt felhasználó    2017-10-14 00:04:22 [726]

akkor feladtad......
lehetöség adot

Előzmény: PallMallMan, 2017-10-13 23:32:30 [725]

PallMallMan | 447    2017-10-13 23:32:30 [725]

A Bluethoot igen áll!
De azért más dolgok haladnak! :D

Nem regisztrálok máshova!
Nem izgat a TávIr, csak ezért meg nem regisztrálok!

Gondoltam itt is van valaki aki megcsinálja (megoldja) nekem.
(de lehet tévedtem)

Nem létfontosságú a projekthez, de azért jól jönne! :D

Remélem kimerítő volt a válasz!
:D :D :D

Előzmény: Törölt felhasználó, 2017-10-13 19:32:48 [724]


Törölt felhasználó    2017-10-13 19:32:48 [724]

Nem mondod hogy még áll ez a projekted?
távir megoldás mért nem jó?

Előzmény: PallMallMan, 2017-10-13 16:14:28 [723]


PallMallMan | 447    2017-10-13 16:14:28 [723]

Még mindig áll az ajánlatom a készre varázsolt bluethoot-ra!

Ha kell akkor akár arduinoval együtt is vevő vagyok rá!
Vagy amennyiben inkognitóban akarsz maradni, nekem az is jó ha a VAKERA-s dolgaid közé felrakod!

(vagy bele kéne vágni a wifis megoldásba!?)

Előzmény: Törölt felhasználó, 2017-10-13 13:45:50 [722]


Törölt felhasználó    2017-10-13 13:45:50 [722]

androidra ujszerü kezelö...
https://play.google.com/store/apps/details?id=in.co.gorest.grblcontroller


dezsoe | 2934    2017-09-27 22:52:40 [721]

Azt én már nem tudhatom. Kipróbálni nem tudom, mert (még!) nincs Arduinom. De nem lesz ez így már sokáig, mert minden érdekel, amit programozni lehet. (Na, jó, a mosógép nem...)

Előzmény: Devecz Miklós, 2017-09-27 22:39:41 [719]


Törölt felhasználó    2017-09-27 22:48:03 [720]

van pár verzios könyvtárak meg meghajtó i2c panel lcd alá is..

https://data.hu/get/10772384/LiquidCrystalI2C.rar


Devecz Miklós | 2663    2017-09-27 22:39:41 [719]

Talált süllyedt!

Köszönöm a tippet, csak azt nem értem, eddig miért nem müködött, amikor már sokadszor próbálkoztam ezzel a változattal is.

Előzmény: dezsoe, 2017-09-27 22:21:10 [717]


Törölt felhasználó    2017-09-27 22:36:11 [718]

nemkel lábakat definiálni i2c csak felbontást 16x2 vagy 20x4..stb....meg az i2c busz azonositot....

LiquidCrystal_I2C lcd(0x20,16,2);

Előzmény: Devecz Miklós, 2017-09-27 20:42:26 [713]


dezsoe | 2934    2017-09-27 22:21:10 [717]

Gugli a barátunk.

Ebben a cikkben az első válasz jó linket ad, az ott levő csomagban értelmezett ennyi paraméter az osztály konstruktorában és tudja, mi az a POSITIVE. (A NewliquidCrystal_1.3.4.zip-et töltöttem le, abba néztem bele.)

Előzmény: Devecz Miklós, 2017-09-27 20:42:26 [713]


szf | 4462    2017-09-27 22:00:02 [716]

De az is lehet, hogy úgy kell írni POSITIV

Előzmény: szf, 2017-09-27 21:51:56 [715]

szf | 4462    2017-09-27 21:51:56 [715]

Az a könyvtár nem használja ezt az utasítást ebben a formában.
Nyisd meg a könyvtárat és olvasd el milyen utasításokat használhatsz.Valamikor csak kis betü nagy betü probléma van.

Előzmény: Devecz Miklós, 2017-09-26 22:55:03 [710]


Devecz Miklós | 2663    2017-09-27 20:58:16 [714]

Kicseréltem, a probléma továbbra is fenn áll.

Előzmény: PallMallMan, 2017-09-27 20:41:46 [712]


Devecz Miklós | 2663    2017-09-27 20:42:26 [713]

Igazából ez az egy sor okozza a problémát:

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Set the LCD I2C address

A "LiquidCrystal_I2C" könyvtár telepitve van a megfelelő helyre, egy példányban szerepel, mégsem akarja elfogadni.

Előzmény: PallMallMan, 2017-09-27 20:38:01 [711]


PallMallMan | 447    2017-09-27 20:41:46 [712]

Itt egy helyes LiquidCrystal-I2C

Előzmény: Devecz Miklós, 2017-09-26 22:55:03 [710]


PallMallMan | 447    2017-09-27 20:38:01 [711]

Mert két különböző könyvtár funkcióit kevered.
Általában ez okozza ezt a hibát!

Előzmény: Devecz Miklós, 2017-09-26 22:55:03 [710]


  Fórum főoldal  |  A lap tetejére

Időrend:
Oldal 27 / 42 Ugrás ide:
Sorok:
|◄ Első  ◄ Előző   23  24  25  26  27  28  29  30  31   Következő ►  Utolsó ►|


 ◊ 
[ 1.4499 ]