Výtah se 3 podlažími
					Pravidla fóra
Tohle subfórum je určeno pro konzultaci ucelených nápadů, popřípadě řešení komplexnějších projektů, které opravdu není možné rozdělit na menší části.
Většinu problémů jde rozdělit na menší a ptát se na ně v konkrétních subfórech.
	Tohle subfórum je určeno pro konzultaci ucelených nápadů, popřípadě řešení komplexnějších projektů, které opravdu není možné rozdělit na menší části.
Většinu problémů jde rozdělit na menší a ptát se na ně v konkrétních subfórech.
Re: Výtah se 3 podlažími
Pro motor můžeš použít knihovnu. A nebo nemusíš. Uvnitř knihovny je v podstatě to, co je v programu již napsaný přímo. Knihovna není nic jinýho, než už předpřipravený funkce. Takže když motoru přímo zapínáš/vypínáš výstupy v programu, tak knihovnu nepotřebuješ. Koukni se třeba sem: https://navody.arduino-shop.cz/navody-k ... river.html Tam taky není použitá knihovna. Ale to sis klidně mohl najít sám.
Podmínky smysl nedávají. Hledej "arduino podmínky". To co chceš bude o něco složitější.
Místo "stop" napiš co chceš. Třeba "vytahStop". Jde o to, že nemůžeš použít název nějaké funkce. Třeba proměnná s názvem void, delay, switch apod. by nefungovala, protože toto slovo už má jiný význam.
			
			
									
									
						Podmínky smysl nedávají. Hledej "arduino podmínky". To co chceš bude o něco složitější.
Místo "stop" napiš co chceš. Třeba "vytahStop". Jde o to, že nemůžeš použít název nějaké funkce. Třeba proměnná s názvem void, delay, switch apod. by nefungovala, protože toto slovo už má jiný význam.
Re: Výtah se 3 podlažími
Tahle podmínka je dobře?
			
			
									
									
						Kód: Vybrat vše
if(vytahStoji && stisknutoPrivolavaciTlacitko)
  {
    if(aktualniPatro < pozadovanePatro){
      jedNahoru = true;
    }
    
    if(aktualniPatro > pozadovanePatro){
      jedDolu = true;}
      
    if(aktualniPatro == pozadovanePatro){
      jedNahoru = false;
      jedDolu = false;}          
  }Re: Výtah se 3 podlažími
Podmínky budou vycházet z předešlího příspěvku. S tačí využívat if a else.
			
			
									
									
						Re: Výtah se 3 podlažími
Tady máš kompletní návod včetně programu na výtah se třemi patry !
https://www.instructables.com/id/Step-Motor-Elevator/
			
			
									
									
						https://www.instructables.com/id/Step-Motor-Elevator/
Re: Výtah se 3 podlažími
Děkuji moc.Taky jsem na tento článek narazil. 
			
			
									
									
						Re: Výtah se 3 podlažími
už to jezdí ?
			
			
									
									UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO 
Pavel1TU
"Správně napsaný kod lze číst jako knihu"
						Pavel1TU
"Správně napsaný kod lze číst jako knihu"
Re: Výtah se 3 podlažími
Chci se zeptat mohl bych použít tyto tlačítka???
Budu potřebovat 6 tlačítek takže bych to tam měl 2x.
Arduino klávesnice membránová 1x3
			
			
									
									
						Budu potřebovat 6 tlačítek takže bych to tam měl 2x.
Arduino klávesnice membránová 1x3
Re: Výtah se 3 podlažími
Hezký večer. Potřeboval bych pomoct s tímto kodem. Potřebuju  aby display vypisoval digitální hodnotu ze snímače. Ale nějak to nefunguje.Vypisuje to furt jedničku, když zmáčknu tlačítko.Prosím o pomoc.
			
			
									
									
						Kód: Vybrat vše
#include <Stepper.h>  
int tlacitko = 3; //Směr proti hod.ruč.
int tlacitko2 = 2;  //Směr hod.ručiček
int kroky = 50;      //Kroky ke každému stisknutí tlačítka  
int cteni = 0;      //Uloží hodnotu čtení tlačítka po směru hod.ruč.
int cteni2 = 0;   //Uloží hodnotu čtení tlačítka proti směru hodinových ručiček 
int digitalpin1 = 7; //sensor pin
int digitalpin2 = 6;
int digitalpin3 = 5;
int LED=13;
// navody.arduino-shop.cbool aktualniPatro;
int stav = 0;
// knihovny pro LCD přes I2C
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// nastavení adresy I2C (0x27 v mém případě),
// a dále počtu znaků a řádků LCD, zde 20x4
LiquidCrystal_I2C lcd(0x27, 20, 4);
   
const int stepsPerRevolution = 500;   
 
// Inicializa a biblioteca utilizando as portas de 8 a 11 para  
// ligacao ao motor  
Stepper myStepper(stepsPerRevolution, 8,10,9,11);        
   
void setup()   
{  
  pinMode(tlacitko, INPUT);  
  pinMode(tlacitko2, INPUT);  
  pinMode(LED, OUTPUT); //set LED pin as output
  pinMode(digitalpin1, INPUT); 
  pinMode(digitalpin2, INPUT);
  pinMode(digitalpin3, INPUT);//set sensor pin as input
  myStepper.setSpeed(60); //Determina a velocidade do motor 
  lcd.begin();
}  
   
void loop()  
{         
  
  if(digitalpin1){
    stav = 1;}
    
  if(digitalpin2){
    stav = 2;}
    
  if(digitalpin3){
    stav = 3;}
    
  //Gira o motor no sentido horario  
  cteni = digitalRead(tlacitko);   
  if (cteni != 0)
  {
    myStepper.step(-kroky);   
  }  
  //Gira o motor no sentido anti-horario  
  cteni2 = digitalRead(tlacitko2);  
  if (cteni2 != 0)  
  {  
    myStepper.step(kroky);   
  }
     
 lcd.setCursor(0,0); // Sets the cursor to col 0 and row 0
lcd.print("Patro: "); // Prints Sensor Val: to LCD
lcd.print(digitalRead(stav)); // Prints value on Potpin1 to LCD
}
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host