Arduino Mini Pro
Moderátor: Moderátoři
Arduino Mini Pro
Předpokládám správně, že pro nahrnutí FW z PC do Arduina budu potřebovat ještě převodník USB/Com TTL? Stačí tenhle převodník při nahrání FW napájet jen z USB? Arduino bude mít napájení svoje.
Díky!
Proč mi nemůže všechno chodit hned ?!!
- monterjirka
- Příspěvky: 2855
- Registrován: 14 čer 2003, 00:00
- Bydliště: Blížejov
monterjirka píše:Možná by bylo jednodušší použít Arduino s rozhraním USB, s konektorem miniUSB.
Ono to cenově je v podstatě stejné
Nojo, ale jak to pak je když potřebuju samostatnej COM TTL? Arduino přeci USB generuje z sériovýho portu. Nebo je nějaký mini (mikro), co má 2 Comy?
Proč mi nemůže všechno chodit hned ?!!
- pocitujlasku
- Příspěvky: 2764
- Registrován: 12 pro 2005, 00:00
- Bydliště: SR, Poprad
dreamer píše:Arduino PRO mini a jeho klony axistují ve více variantách. Nejdříve zjisti jestli máš 5V nebo 3,3V verzi, tomu se musí přizpůsobit úrovně převodníku. Měl jsem i takový kde se dalo propojkou zvolit. Potom stačí propojit TX a RX (křížem), GND případně i VCC (USB port určitě zvládne napájení převodníku i Arduina). Ve chvíli kdy IDE vypíše nahrávám program stisknout reset na arduinu. Jde propojit i ten reset aby nebylo nutné jej mačkat ale mě se obvykle nechce hledat jak a ne všechny převodníky mají potřebný signál vyvedený.
Potřebuju mini i převodník 5V, řízení CNC je Mega 2560 taky 5V, 3.3V není V CNC mašině k dispozici. Převodník z odkazu má jumper 3.3 /5V tak jsem snad vybral dobře.
Ještě bych měl dotaz k Keypad 4x4 (0-9, A,B,C,D,#,*) co se nabízí k Arduinu. Jsou v klávesnici mírně vystouplý křupací žabky, nebo je bez žabek a zcela rovná plocha hmatníku a spínaní tak nějak neurčitý? Jde mi o to, nalepit na stávající klávesnici novou fólii s novými významy kláves. U vystouplých žabek to prý nejde, origo je ve výrobě lisovaný do formy za tepla aby se vytvořily bochánky nad křupkama.
Díky
Jirka
Proč mi nemůže všechno chodit hned ?!!
1) Použít třeba Arduino mini. K němu potřebuješ převodník z USB nebo COM portu na TTL. Ideál je, pokud převodník má signály RX,TX,DTR a GND. DTR signál usnadňuje programování při automatickém nahrávání kódu do Arduina. (DTR je použito pro automatický RESET při startu nahrávání).
2) Spustit Arduino prostředí.
3) Zvolit v něm odpovídající číslo COM portu a typ Arduina.
4) Vyzkoušet, zda funguje přeložení a nahrání příkladu "blikání LEDkou" - je to v příkladech v Arduino prostředí.
5) Připojit klávesnici.
6) Spustit si v Arduino prostředí terminál sériového portu - je to součástí Arduino IDE a může se to používat souběžně s nahráváním programu do procesoru (samo si to přepíná).
7) Nahrát nějaký příklad pro sérivou komunikaci (třeba výpis ASCII tabulky). Otestovat, zda chodí sériová komunikace (je třeba si pohlídat rychlosti).
9) A pak již vesele datlovat vlastní kód...
ST78 píše:Postupoval bych takto:
9) A pak již vesele datlovat vlastní kód...
Nemusím, už je nadatlováno, sériák na AUX1 D0 a D1. Snad dobře.
Mělo by to generovat od každý klávesy jinej G-code na ovládání frézky, takže nebude potřeba mít trvale připojený PC. Frézovací data pojedou z SD karty na Mega 2560.
Kód: Vybrat vše
#include <Keypad.h>
#include <EEPROM.h>
float xRes = 0.1;
float yRes = 0.1;
float zRes = 0.01;
//int toolPWM = EEPROM.read(1);
int toolPWM = 255;
int pwmRes = 5;
void(* resetFunc) (void) = 0; //declare reset function at address 0
const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
char hexaKeys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {5, 4, 3, 2}; //connect to the column pinouts of the keypad
Keypad keypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
void setup() {
Serial.begin(250000);
keypad.addEventListener(keypadEvent);
}
void loop() {
char key = keypad.getKey();
}
void keypadEvent(KeypadEvent key) {
switch (keypad.getState()) {
case PRESSED:
if (key == '*') { Serial.println("M42 P44 S255"); Serial.println("M117 Spindle ON"); } // Spindle on
else if (key == '0') { Serial.println("M42 P44 S0"); Serial.println("M117 Spindle OFF"); } // Spindle off
else if (key == '#') { Serial.println("M84"); } // Motor off
else if (key == '6') { Serial.println("G91"); Serial.print("G0 X"); Serial.println(xRes); Serial.println("G90"); } // X Plus
else if (key == '4') { Serial.println("G91"); Serial.print("G0 X-"); Serial.println(xRes); Serial.println("G90"); } // X Minus
else if (key == '2') { Serial.println("G91"); Serial.print("G0 Y"); Serial.println(yRes); Serial.println("G90"); } // Y Plus
else if (key == '5') { Serial.println("G91"); Serial.print("G0 Y-"); Serial.println(yRes); Serial.println("G90"); } // Y Minus
else if (key == '3') { Serial.println("G91"); Serial.print("G0 Z"); Serial.println(zRes); Serial.println("G90"); } // Z Plus
else if (key == '1') { Serial.println("G91"); Serial.print("G0 Z-"); Serial.println(zRes); Serial.println("G90"); } // Z Minus
else if (key == 'A') { if(xRes == 0.1) {xRes = 1;} else if(xRes == 1) {xRes = 10;} else if(xRes == 10) {xRes = 50;} else if(xRes == 50) {xRes = 0.1;} } // X Resolution
else if (key == 'B') { if(yRes == 0.1) {yRes = 1;} else if(yRes == 1) {yRes = 10;} else if(yRes == 10) {yRes = 50;} else if(yRes == 50) {yRes = 0.1;} } // Y Resolution
else if (key == 'C') { if(zRes == 0.01) {zRes = 0.1;} else if(zRes == 0.1) {zRes = 1;} else if(zRes == 1) {zRes = 10;} else if(zRes == 10) {zRes = 0.01;} } // Z Resolution
else if (key == '7') { Serial.println("G28 X0 Y0"); } // XY to MIN
else if (key == '8') { Serial.println("G92 X0 Y0 Z0"); } // Set to X0 Y0 Z0
else if (key == '9') { Serial.println("G28 Z0"); } // Z to MAX
else if (key == 'D') { for (int x=0;x<5;x++) Serial.println("M112"); } // Kill
break;
case RELEASED:
break;
case HOLD:
if (key == 'A') { xRes = 0.1; } // X Resolution
else if (key == 'B') { yRes = 0.1; } // Y Resolution
else if (key == 'C') { zRes = 0.01; } // Z Resolution
else if (key == 'D') { resetFunc(); } // Restart
break;
}
}
Ty Include jsou obecný Arduiňácký, nebo se musí hledat pro konkrétní typ, u Mini pro pro AT328?
Díky
Proč mi nemůže všechno chodit hned ?!!
dreamer píše: Otázka je jestli bude fungovat když se na ni něco nalepí a jestli to tam bude držet.
Jo UhuPor je vyzkoušený na Jihlavský membránovky. Je to kontaktní lepidlo alá Alkaprén, stále gumovej a hlavně nic nežere, ani polystyrén.
To FHonza. Já vím, že to je nic moc, proto jsem to tak pojmenoval. Co tohle? To jsou zase gumičky ala dálkový ovládání co za rok zvolejovatí, co? Na tom popis kláves nezměním ani náhodou.
Proč mi nemůže všechno chodit hned ?!!
Takova klavesnice ma perfektni hmatovou odezvu, da se v pohode ovladat i v rukavicich a jeste se mi nestalo ze by nejaky spinac odesel. Nahrazuju tim ve firme vsechny membranove ktere po case odchazi, chlapi si je pochvaluji.
Nad tema gumovyma jsem taky uvazoval, ale asi se bude obtizne zajistovat odolnost proti prachu a vode. Samolepku nalepis a nic se tam nedostane ani po krajich.