Skocz do zawartości

Przeszukaj forum

Pokazywanie wyników dla tagów 'Początkujący'.

  • Szukaj wg tagów

    Wpisz tagi, oddzielając przecinkami.
  • Szukaj wg autora

Typ zawartości


Kategorie forum

  • Elektronika i programowanie
    • Elektronika
    • Arduino, ESP
    • Mikrokontrolery
    • Raspberry Pi
    • Inne komputery jednopłytkowe
    • Układy programowalne
    • Programowanie
    • Zasilanie
  • Artykuły, projekty, DIY
    • Artykuły redakcji (blog)
    • Artykuły użytkowników
    • Projekty - roboty
    • Projekty - DIY
    • Projekty - DIY (początkujący)
    • Projekty - w budowie (worklogi)
    • Wiadomości
  • Pozostałe
    • Oprogramowanie CAD
    • Druk 3D
    • Napędy
    • Mechanika
    • Zawody/Konkursy/Wydarzenia
    • Sprzedam/Kupię/Zamienię/Praca
    • Inne
  • Ogólne
    • Ogłoszenia organizacyjne
    • Dyskusje o FORBOT.pl
    • Na luzie
    • Kosz

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Rozpocznij

    Koniec


Ostatnia aktualizacja

  • Rozpocznij

    Koniec


Filtruj po ilości...

Data dołączenia

  • Rozpocznij

    Koniec


Grupa


Znaleziono 19 wyników

  1. Witam, Posiadam arduino UNO + Shield sterownika L293D do 4x silników DC. Za pomocą funkcji switch steruje sobie aby silniczek kręcił się w prawo, lewo lub się zatrzymywał. Zrobiłem również prosta aplikację do androida za pomocą MIT App Invenstor, gdzie wysyłam na serial odpowiednie zmienne. I teraz chciałbym sterować prędkością tych silniczków, za pomocą 4 przycisków ("+" i "-" - dla każdego silniczka). Tylko mam problem z wysyłaniem w taki sposób aby nie przerywać działania poprzedniej komendy np. jazdy na przód. Teoretycznie mógłbym zapamiętać ostatni stan silniczka i dopisać zaraz pow wysłaniu zmiennej określającej obroty silniczka, ale jakoś ten pomysł wydaje mi się dziwny. Czy jest jakiś inny sposób? Szukałem na google ale nie mogłem nic trafić.
  2. Witam bardzo serdecznie jestem tu pierwszy raz więc proszę o wyrozumiałość . Chciałbym złożyć drobny układ, który to by mi ładował powerbank dzięki energii słonecznej, mam panel 6v 1w 200mA oraz stabilizator ka78L05.Gdy na panelu mam napięcie 5.6V to na stabilizatorze uzyskuje 4.2, dodatkowo gdy podłączamy przetwornice step-up 1.2A 5v to na wyjściu otrzymuje ledwo 3V nie znam dokładnie przyczyny tak słabego napięcia na wyjściu, dlatego też czy jeżeli bym dołożył jeszcze jeden panel o tych samych specyfikacjach to czy bym osiągnął zadowalający efekt? Tzn. mógłbym podłączyć powerbank i by śmigalo wszystko.
  3. Posiadam mikrokontroler PIC. Jestem początkującym w dziedzinie mikrokontrolerów i mam nie dużą wiedzę z zakresu ich programowania. Samego programowania uczę się ale na razie tylko teorię. Mikrokontroler jaki posiadam to PIC 32MM USB Curiosity Development Board i muszę zaprogramować go aby współgrał z modułem sieci bezprzewodowej ziggBee. Wspomniany moduł to 6LowPAN T Click. Zaprogramowanie jest mi potrzebne dopracy inżynierskiej. Proszę o najważniejsze elementy i informację wysyłać w wiadomości prywatnej, ponieważ możliwe, że będą użyte.Takie dane mogą być uwzględnione przez antyplagiat imusiałbym dodatkowo zmieniać istotne elementy. http://microchipdeveloper.com/boards:pic32mm-usb-curiosity https://www.microchip.com/DevelopmentTools/ProductDetails/dm320107 Tutaj jeste więcej na temat płytki. Program jaki posiadam to MPlab X w wersji 5.10
  4. Witam wszystkich chciałbym Wam dzisiaj pokazać sejf mojego autorstwa. Może on być głównie wykorzystywany jako ciekawostka lub zabawka. Projekt powstał w celu nauczenia się podstaw arduino. Ostatnio nauczyłem się sterowania silniczkami oraz przechwytywania liczb z klawiatury. Po połączeniu tych umiejętności z podstawami programowania powstał ten projekt sejfu. Przy tworzeniu tego projektu wykorzystałem następujące materiały: Arduino Uno Klawiaturę numeryczną Serwo potencjometr Przewody połączeniowe męsko-damskie Wykonanie: Projekt został wykonany z elementów jakie posiadałem w domu. Do Arduino podłączone są przewody, które łączą się z serwem (zasilanie, masa oraz sygnał sterujący). Przewody z wyświetlacza są podłączone bezpośrednio do Arduino poza V0. Ponadto, V0 zostało zintegrowane z potencjometrem i służy do regulacji kontrastu wyświetlacza. Układ jest zasilany baterią 9V za pomocą odpowiedniego adaptera Działanie projektu: Program przechwytuje z klawiatury kod wpisywany przez użytkownika. Jeśli kod jest prawidłowy to uruchamia się serwo i otwiera skrytkę. Jeśli kod jest nie prawidłowy program informuje użytkownika o niepoprawnym haśle. Na klawiaturze znajdują się klawisze A, B, C, D, # i *. Mój program ich nie wykorzystuje, ale jeśli ktoś chce wykonać taki projekt to może je wykorzystać. Po kliknięciu wyżej wymienionych klawiszy program informuje o naciśnięciu złego klawisza. Kod: #include <Servo.h> #include <LiquidCrystal.h> // biblioteka do LCD #include <Keypad.h> //biblioteka do klawiatury Servo servo; int pos = 40; char* password ="7890"; //hasło int pozisyon = 0; int przycisk = 0; const byte rows = 4; const byte cols = 4; char keyMap [rows] [cols] = { {'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'} }; byte rowPins [rows] = {1, 2, 3, 4}; byte colPins [cols] = {5, 6, 7, 8}; Keypad myKeypad = Keypad( makeKeymap(keyMap), rowPins, colPins, rows, cols); LiquidCrystal lcd (A0, A1, A2, A3, A4, A5); void setup(){ servo.attach(9); lcd.begin(16, 2); setLocked (true); przycisk = 0; } void loop(){ setLocked (true); char whichKey = myKeypad.getKey(); lcd.setCursor(0, 0); lcd.print(" Witam"); lcd.setCursor(0, 1); lcd.print(" Wpisz haslo"); if(whichKey == '*' || whichKey == '#' || whichKey == 'A' || whichKey == 'B' || whichKey == 'C' || whichKey == 'D'){ przycisk=0; pozisyon=0; setLocked (true); lcd.clear(); lcd.setCursor(0, 0); lcd.print("ZLY PRZYCISK"); delay(1000); lcd.clear(); } if(whichKey == '0' || whichKey == '1' || whichKey == '2' || whichKey == '3' || //define keys whichKey == '4' || whichKey == '5' || whichKey == '6' || whichKey == '7' || whichKey == '8' || whichKey == '9'){ przycisk++; } if(przycisk == 5){ przycisk = 0; lcd.clear(); lcd.setCursor(0,0); lcd.write(" ZA DUZO"); lcd.setCursor(0,1); lcd.write(" ZNAKOW"); delay(1000); lcd.clear(); } if(przycisk == 1){ lcd.clear(); lcd.setCursor(0,1); lcd.write(" *"); } if(przycisk == 2){ lcd.clear(); lcd.setCursor(0,1); lcd.write(" **"); } if(przycisk == 3){ lcd.clear(); lcd.setCursor(0,1); lcd.write(" ***"); } if(przycisk == 4){ lcd.clear(); lcd.setCursor(0,1); lcd.write(" ****"); } if(przycisk == 4 && pozisyon < 3){ lcd.clear(); lcd.setCursor(0,0); lcd.write(" ZLE"); lcd.setCursor(0,1); lcd.write(" HASLO"); delay(1000); przycisk = 0; lcd.clear(); } if(whichKey == password [pozisyon]){ pozisyon ++; } if(pozisyon == 4){ przycisk = 0; pozisyon = 0; setLocked (false); lcd.clear(); lcd.setCursor(0, 0); lcd.print("*** Verified ***"); delay(3000); lcd.clear(); lcd.setCursor(0, 0); lcd.print("Skrytka zamknie"); lcd.setCursor(0, 1); lcd.print(" sie za 5s"); delay(7000); lcd.clear(); } delay(100); } void setLocked(int locked){ if(locked){ servo.write(40); } else{ przycisk = 0; servo.write(130); } } Przyszłość projektu: Projekt można modyfikować (np. zmiana hasła przez użytkownika). Można też zmienić rodzaj zabezpieczenia z kodu czterocyfrowego na hasło z literami lub odcisk palca użytkownika. W najbliższej przyszłości zamierzam to połączyć z Raspberry Pi (rozpoznawanie twarzy) i Google AIY Voice Kit (komendy głosowe). Film: Zdjęcia:
  5. Cześć!!! Podczas pisania kodu programu natrafiłem na problem. Pisze program w którym każdy solenoid (na razie dioda) odpowiada, numerowi. Na ekranie wyświetla się coś w stylu menu z liczbami, którym steruje się dwoma przyciskami (góra[1], dół[2]). Po wybraniu opcji zatwierdza się ją przyciskiem[3]. Problem polega na tym, że nie wiem jak zrobić aby program "wykrywał" pojedyncze liczby i zaświetlił odpowiednie diody. np. Liczba: 1 2 3 . 4 5 Diody: 4 5 6 2 7 8 Solenoidy będą naciskały klawiaturę numeryczną. Nie da się wpiąć bezpośrednio do urządzenia (Czyli do wielkich ekranów 7-dmio segmentowych, którymi steruje ww. klawiatura.). Kiedyś pisałem już temat na tym forum dotyczący tego samego programu: https://tiny.pl/txc4v Z góry dziękuję!!! #include <LCD.h> #include <LiquidCrystal.h> #include <LiquidCrystal_I2C.h> #include <Wire.h> #include <EasyButton.h> #define czasZatw 200 #define czasGoraDol 200 #define czas000 5000 #define czasSolen 1000 #define czasNaci 500 #define BACKLIGHT_PIN 3 LiquidCrystal_I2C lcd(0x3F,2,1,0,4,5,6,7); EasyButton zatw(A0); EasyButton wdol(A1); EasyButton wgore(A2); int array[15] = { 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14 }; String a[17]; short b=-1; byte d=0; byte c=0; byte g=1; byte h=2; byte i=3; byte j=4; byte k=5; byte l=6; byte m=7; byte n=8; byte o=9; void setup() { pinMode(2,OUTPUT); pinMode(3,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); pinMode(8,OUTPUT); pinMode(9,OUTPUT); pinMode(10,OUTPUT); pinMode(11,OUTPUT); pinMode(12,OUTPUT); Serial.begin(115200); zatw.begin(); wdol.begin(); wgore.begin(); zatw.onPressed(ztawierdz); wdol.onPressed(dol); wgore.onPressed(gora); pinMode(13,OUTPUT); lcd.begin (16,2); lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE); lcd.setBacklight(HIGH); lcd.setCursor(0,0); lcd.print("Aktualny: "); lcd.print(a[b]); lcd.setCursor(0,1); lcd.print("Nastepny: "); lcd.print(a[b+1]); a[16]="------"; a[15]="------"; a[14]="15.30"; a[13]="14.03"; a[12]="13.01"; a[11]="12.35"; a[10]="11"; a[9]="10"; a[8]="9"; a[7]="8.44"; a[6]="7"; a[5]="6.26"; a[4]="5.04"; a[3]="4.03"; a[2]="3"; a[1]="751.3"; a[0]="0.45"; } void ztawierdz() { if(b<16&&b>=0) { lcd.clear(); Serial.println("zatwierdzono!!!"); b++; c++; lcd.setCursor(0,0); lcd.print("Aktualny: "); lcd.print(a[b]); lcd.setCursor(0,1); lcd.print("Nastepny: "); lcd.print(a[b+1]); b=c; digitalWrite(13, HIGH); delay(czasZatw); digitalWrite(13, LOW); delay(czasZatw); digitalWrite(13, HIGH); delay(czasZatw); digitalWrite(13, LOW); delay(czasZatw); digitalWrite(13, HIGH); delay(czasZatw); digitalWrite(13, LOW); digitalWrite(2,HIGH); delay(czasSolen); digitalWrite(2,LOW); delay(czasNaci); if(a[0][0]%g){ digitalWrite(3,HIGH); delay(czasSolen); digitalWrite(3,LOW); delay(czasNaci); } if(a[0][0]%h) { digitalWrite(4,HIGH); delay(czasSolen); digitalWrite(4,LOW); delay(czasNaci); } if(a[c][d]==h) { digitalWrite(5,HIGH); delay(czasSolen); digitalWrite(5,LOW); delay(czasNaci); } if(a[c][d]==i) { digitalWrite(6,HIGH); delay(czasSolen); digitalWrite(6,LOW); delay(czasNaci); } if(a[c][d]==j) { digitalWrite(7,HIGH); delay(czasSolen); digitalWrite(7,LOW); delay(czasNaci); } if(a[c][d]==k) { digitalWrite(8,HIGH); delay(czasSolen); digitalWrite(8,LOW); delay(czasNaci); } if(a[c][d]==l) { digitalWrite(9,HIGH); delay(czasSolen); digitalWrite(9,LOW); delay(czasNaci); } if(a[c][d]<m) { digitalWrite(10,HIGH); delay(czasSolen); digitalWrite(10,LOW); delay(czasNaci); } if(a[c][d]==n) { digitalWrite(11,HIGH); delay(czasSolen); digitalWrite(11,LOW); delay(czasNaci); } if (a[c][d]==o) { digitalWrite(12,HIGH); delay(czasSolen); digitalWrite(12,LOW); delay(czasNaci); } d+1; } } void dol() { if(b<16&&b>=1) { lcd.clear(); Serial.println("w dol!!!"); b--; lcd.setCursor(0,0); lcd.print("Aktualny: "); lcd.print(a[b]); lcd.setCursor(0,1); lcd.print("Nastepny: "); lcd.print(a[b+1]); digitalWrite(13, HIGH); delay(czasGoraDol); digitalWrite(13, LOW); } } void gora() { if(b<15) { lcd.clear(); Serial.println("w gore!!!"); b++; lcd.setCursor(0,0); lcd.print("Aktualny: "); lcd.print(a[b]); lcd.setCursor(0,1); lcd.print("Nastepny: "); lcd.print(a[b+1]); digitalWrite(13, HIGH); delay(czasGoraDol); digitalWrite(13, LOW); } } void loop() { zatw.read(); wdol.read(); wgore.read(); }
  6. Witam, Zainspirował mnie pomysł ze strony: https://create.arduino.cc/projecthub/kksjunior/windows-pc-lock-unlock-using-rfid-5021a6?ref=tag&ref_id=rfid&offset=0 aczkolwiek zmieniłbym parę rzeczy. Części do projektu: -Arduino Pro Micro -Moduł RFID RC522 -Dioda LED zielona -Dioda LED czerwona -2 Rezystory 220Ohm -Rezystor 67Ohm -Rezystor 270Ohm -Buzzer (opcjonalne) -Przełącznik na 3 piny (opcjonalne) Najpierw zaprojektowałem sam układ, który wygląda o tak: Gdy wszystko było gotowe zabrałem się do podłączania do breadboard'a testującego, ponieważ zawsze dobrze jest sprawdzić obwód zanim się go przylutuje na stałe. Chciałem jednak wziąć ten projekt o krok dalej, i zaprojektowałem płytkę PCB, i zamówiłem ją na https://jlcpcb.com : Pojawił się jednak mały problem, ponieważ mam tylko arduino nano i uno, ale potrzeba mikroprocesora atmega32u4, który można znaleźć tylko w arduino MEGA i pro Micro. Wybrałem Pro Micro, ponieważ chcę, aby ten obwód był jak najmniejszy. Po podłączeniu wszystkiego, działało to bez problemu. Dla zainteresowanych, oto kod: pc.rar Teraz tylko czekam, aż moja PCB przyjedzie.
  7. Na wstępie witam wszystkich forumowiczów. Jest to mój pierwszy post i początki zabawy z elektroniką więc proszę o wyrozumiałość. Tworzę ten temat ponieważ chciałbym stworzyć takiego robota (nalewak) jak w linku poniżej. https://www.youtube.com/watch?v=CLx0VmyivU8 Ogólnie lubię sobie majsterkować jednak bardziej skomplikowaną elektronikę omijałem szerokim łukiem. Do czasu gdy zobaczyłem ten filmik i postanowiłem takie coś skonstruować samodzielnie. Jakie podzespoły zostały tu użyte wydają mi się czytelne jednak problem jest w napisaniu takiego programu który by to obsłużył i połączeniu wszystkiego razem. Pomyślałem o arduino i zacząłem zgłębiać wiedzę na ten temat czytając kurs o arduino. Trochę wiedzy nabyłem jednak to jest ciągle za mało żeby coś takiego stworzyć dlatego tworzę ten temat i proszę was o pomoc. Utknąłem można powiedzieć że na samym początku. Mam tylko koncepcję jak to połączyć. Chcę obracać talerz silnikiem krokowym który będzie się zatrzymywał w wyznaczonym miejscu po przez czujnik nacisku, gdy wykryje nacisk czyli kieliszek zatrzyma się na odpowiednią ilość czasu w odpowiednim miejscu, a w tym czasie pompka zacznie nalewać płyn po pełnym obrocie maszyna zatrzyma się automatycznie. Jednak nie wiem jak napisać ten program, próbuję swoich sił tu https://www.tinkercad.com/. Można sprawdzić czy wszytko działa nie obawiając się że coś popsujemy, jednak nie ma tu niektórych komponentów jak czujnik nacisku co utrudnia mi trochę prace. Czym taką czujkę mogę zastąpić ? tak samo pompkę ? Chyba że moja koncepcja nie jest do zrealizowania albo można to rozwiązać lepiej ? Z góry dziękuję za wyrozumiałość i proszę o pomoc.
  8. komo23

    Arduino zasilanie

    Witam, potrzebuje porady. Posiadam taką baterię z wyjściem EC2: https://www.banggood.com/Hubsan-H501S-X4-RC-Quadcopter-Spare-Parts-7_4V-2700mAh-10C-Battery-H501S-14-p-1045993.html?utm_campaign=3534781_1045993&amp;utm_content=1087&amp;p=QO14213534781201601L Chcę ją użyć do zasilania Arduino, Myślałem żeby połączyć to ze sobą za pomocą: https://botland.com.pl/pl/szybkozlacza/1590-wtyk-dc-55x21mm-z-szybkozlaczem.html?search_query=szybkozlacze&amp;results=30, czy to dobry pomysł ? w jaki sposób najlepiej to połączyć ze sobą ?
  9. faalkoor

    Telegraf

    Witam, Od niedawna borykam się z układam mającym działać jak telegraf. W takim sensie, iż do dyspozycji mamy 5 przycisków. Mają następujące funkcje: pisanie kropki pisanie kreski pisanie ukośnika wymazywanie całości zapisanego kodu wysyłanie kodu Nie wiem jak przesłać napisany kod Morse'a z Serial Monitora jednego Arduino do drugiego Arduino przez transmiter oraz odbiorem tego przez receiver i wyświetleniem tego na LCD. Próbowałem już coś kombinować, ale nie daje to żadnego efektu. Pozdrawiam
  10. Witam wszystkich, zachęcony konkursem opiszę mój niedawny projekt i na tym forum, projekt ten pojawił już się na majsterkowie, kto nie zna to polecam ten portal. Artykuł podzielę na trzy części: budowa, szybki poradnik jak się tego używa i dlaczego taka nie inaczej. To po raz któryś, zaczynamy. Budowa Projekt powstał dzięki temu że jestem harcerzem i na pewno zostanie wykorzystany przy jakiś grach, ale jak lubicie się bawić to bez problemu można wykorzystać go do komunikacji, chyba że nadejdzie apokalipsa zombi i nie będzie innego wyjścia. Będzie nam potrzebne: (ilość jest podana do budowy 2 urządzeń, choć można zbudować więcej i je połączyć) 4 lub 2 stare baterie 9v(albo gniazda dla tych baterii) 2 włączniki chwilowe 2 buzzery z generatorem 2 diody led bardzo fajne zestawy diod mają na botlandzie 4 diody prostowicze 2 jakieś mocowania kabli( ja użyłem kostek) takie będą idealne jakaś obudowa Tak więc zabieramy się za cięcie. I po chwili. A teraz wyciągnijmy nasze złącza ze starej baterii 9v Układ w środku będzie wyglądać tak. I teraz popełniłem największy błąd. Wmontowałem wszystkie bebechy do środka zamiast najpierw skończyć obudowę, ale cóż, trzeba uczyć się na błędach, a reszta pracy przebiegała następująco. Jedna kostka jaką wykorzystałem pochodziła z listwy więc musiałem ją zaszpachlować szpachlą do drewna. I tu już ostateczne testy przed malowaniem. Jak widać trochę wiórów z klejem poszło, trzeba się będzie postarać bardziej następnym razem ;). Jeszcze pomalować i gotowe. Jak to działa? Na początku trzeba minimum dwa urządzenia ze sobą połączyć.Zasada jest prosta. Wciśnięcie przycisku powoduje zamknięcie obwodu, z buzzera wydobywa się pisk i jeśli dioda się świeci znaczy to, że odbiornik sygnał odbiera, a jeśli nie to należy zmienić kolejność kabli w kostce. Jeśli nie zadziała czeka nas spacer do kolegi by sprawdzić czy na pewno podłączył to co trzeba tam gdzie trzeba. Tyle z samego urządzenia, a teraz sama komunikacja. Sposoby są dwa.W tym łatwiejszym umawiamy się że jakiś rym coś oznacza a inny coś innego np. początek rytmu „Przez twe oczy zielone” to chodź do mnie a „Miłość w Zakopanem” to zaraz będę, zagrzej pizze.W profesjonalnym posłużymy się alfabetem Morse’a. Wszystkie litery i znaki są kodowane według tej tablicy: Kropka oznacza krótki dźwięk, a kreska długi. Słowa możemy oddzielić dłuższą przerwą niż między literami, zdanie bardzo długim dźwiękiem. Szkoły są różne. Praktycznie przy nadawaniu najłatwiej wykorzystać tą tablicę: i nadając w myśli mówimy sobie słowo=literę zatrzymując się na o.Przy odbieraniu łatwiej skorzystać z tej tablicy: Słysząc kreskę wybieramy ramię z kreską, słysząc kropkę ramię z kropką i następną kropkę analogiczne ramię z kropką, jeśli to koniec litery dochodzimy do D i zapisujemy to na kartce. Dlaczego tak? Zawsze czytając o jakimś projekcie i chcąc go wykonać sprawdzałem wszystko co do czego służy, jak działa, czym można to zastąpić itd. Dlatego umieszczam tą część dla takich osób jak ja. Dwie baterie zamiast jednej?-Dwie baterie połączone szeregowo dają nam 2 razy wyższe napięcie niż jedna, choć układ na jednej też działa, ale dostęp do wyższego napięcia spowoduje że jest możliwe przyłączenie dłuższego przewodu. Buzzer z generatorem-No wiadomo, jakoś sygnał musimy odczytać, a patrzenie na migoczącą diodę nie jest wygodne. Dioda led-Bez niej nie wiedzielibyśmy czy nasz sygnał dochodzi, a po co się trudzić na marne, warto tutaj jeszcze zaznaczyć że buzzer jaki użyłem ma taki opór, że użycie dodatkowego opornika dla diody nie jest konieczne. Dioda prostownicza przy diodzie led-Prąd musi płynąć w 2 strony, a jeśli zastosowalibyśmy zwykły kabel, to dioda nie będzie świecić Dioda prostownicza przy buzzerze-Buzzer działa tylko jeśli podepniemy go + do +, a – do -, w przeciwnym wypadku może się popsuć więc warto go chronić. To by było na tyle. Jeśli zauważyliście jakiś błąd śmiało dajcie znać, nikt nie jest nieomylny, a ja należę do tych często mylnych ;). Dzięki za przeczytanie.
  11. Witam. Jestem początkującym użytkownikiem mikrokontrolerów i staram sie ogarnąć programowanie w BASCOM. Napisałem coś takiego bardzo prostego i w sumie spełniałoby to założenie ale mam pytanie czy można w jednym czasie uaktywnić dwa porty w tym przypadku PORTB.3 i PORTB.4. Oba porty musiałyby byś aktywne przez inny okres czasu /np. P3 - 1sek, P4 - 3sek/. Kolejne pytanie to czy można zdefiniować taką funkcje jeżeli na PORTB.0 pojawia sie napięcie to wykonywana jest jakaś funkcja np. podanie prądu na PORTB.3. Byłbym wdzięczny za podpowiedź ewentualnie podanie sposobu rozwiązania. Wiem ze całość napisana jest mało kulturalnie i zajmuje prawie całą pamięć kontrolera ale proszę o wyrozumiałość dopiero zaczynam. Pozdrawiam ' Atmel ATtiny13 $regfile = "attiny13.dat" ' 1 MHz internal clock $crystal = 1200000 ' PortB is Output Config Portb = Output $hwstack = 8 $swstack = 8 $framesize = 8 ' Start motor Do Portb.3 = 1 'lights Waitms 10 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 5 Portb.0 = 0 Waitms 800 Portb.3 = 1 'lights Waitms 8 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 5 Portb.0 = 0 Waitms 900 Portb.3 = 1 'lights Waitms 8 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 10 Portb.0 = 0 Waitms 700 Portb.3 = 1 'lights Waitms 10 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 7 Portb.0 = 0 Waitms 700 Portb.3 = 1 'lights Waitms 8 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 8 Portb.0 = 0 Waitms 500 Portb.3 = 1 'lights Waitms 9 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 10 Portb.0 = 0 Waitms 700 Portb.3 = 1 'lights Waitms 7 Portb.3 = 0 'lights Waitms 1 Portb.0 = 1 Waitms 9 Portb.0 = 0 Waitms 600 Portb.3 = 1 'lights Waitms 7 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 15 Portb.0 = 0 Waitms 700 Portb.3 = 1 'lights Waitms 5 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 15 Portb.0 = 0 Waitms 500 Portb.3 = 1 'lights Waitms 8 Portb.3 = 0 'lights Waitms 1 Portb.0 = 1 Waitms 20 Portb.0 = 0 Waitms 500 Portb.3 = 1 'lights Waitms 10 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 24 Portb.0 = 0 Waitms 400 Portb.3 = 1 'lights Waitms 6 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 30 Portb.0 = 0 Waitms 400 Portb.3 = 1 'lights Waitms 10 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 5 Portb.0 = 0 Waitms 700 Portb.3 = 1 'lights Waitms 11 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 5 Portb.0 = 0 Waitms 400 Portb.3 = 1 'lights Waitms 11 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 24 Portb.0 = 0 Waitms 400 Portb.3 = 1 'lights Waitms 11 Portb.3 = 0 'lights Waitms 1 Portb.4 = 1 'lights4 Waitms 10 Portb.4 = 0 'lights4 Waitms 1 Portb.0 = 1 Waitms 50 Portb.0 = 0 Waitms 300 Portb.0 = 1 Waitms 90 Portb.0 = 0 Waitms 300 Portb.0 = 1 Waitms 120 Portb.0 = 0 Waitms 200 Portb.0 = 1 Waitms 500 Portb.0 = 0 Waitms 100 Portb.0 = 1 Waitms 400 Portb.0 = 0 Waitms 90 Portb.0 = 1 Waitms 800 Portb.0 = 0 Waitms 60 Portb.0 = 1 Waitms 1000 Portb.0 = 0 Waitms 400 Loop
  12. Witam jestem całkowicie nowy tutaj, zrobilem według poradnikow modul ktory po klasnieciu mial zapalać pasek led. Po podłączeniu tego mimo klaskania nic sie nie dzieje. Jedynie kiedy podłączyłem jeden z kabli od ledow do trzeciego wejscie w przekaźniku to sie ciagle swieciły ale także nie reagowały na klaskanie. Kod: int soundSensor = 3; int relay = 4; int claps = 0; long detectionSpanInitial = 0; long detectionSpan = 0; boolean lightState = false; void setup() { pinMode(soundSensor, INPUT); pinMode(relay, OUTPUT); } void loop() { int sensorState = digitalRead(soundSensor); if (sensorState == 0) { if (claps == 0) { detectionSpanInitial = detectionSpan = millis(); claps++; } else if (claps > 0 && millis()-detectionSpan >= 50) { detectionSpan = millis(); claps++; } } if (millis()-detectionSpanInitial >= 400) { if (claps == 2) { if (!lightState) { lightState = true; digitalWrite(relay, HIGH); } else if (lightState) { lightState = false; digitalWrite(relay, LOW); } } claps = 0; } }
  13. Witam forumowiczów, na wstępie wspomnę iż dopiero rozpoczynam swoją przygodę z elektroniką toteż proszę o wyrozumiałość jeśli pojawi się taka potrzeba. Mam do przygotowania urządzenie którego opis przygotowałem poniżej. Urządzenie ma posiadać wbudowaną pamięć w której przechowywane będą pliki audio oraz pliki tekstowe (.txt, .xlsx, .csv, itp.) które powinny mieć możliwość łatwej aktualizacji (np. podłączenie tabletu lub telefonu przez bluetooth lub usb / wifi / wbudowany slot na kartę SIM i aktualizacja przez internet (preferowane jeśli cena nie okaże się zaporowa)). Pamięć nie powinna być potrzebna większa niż 100 megabajtów. Urządzenie ma być zamknięte w niesprecyzowanej jeszcze obudowie z jednym przyciskiem zewnętrznym po naciśnięciu którego na podstawie zawartości plików tekstowych oraz aktualnej godziny odtwarzany ma być wybrany przez algorytm plik audio. Urządzenie powinno być dostosowane do działania w warunkach zewnętrznych. Zasilanie urządzenia ma pochodzić z sieci energetycznej, ewentualnie z baterii połączonej z panelem fotowoltaicznym. W pierwszej kolejności muszę ustalić platformę która będzie najlepsza (najtańsza ze spełniających założenia). Po wstępnym sprawdzeniu rozwiązań doszedłem do wniosku, że najlepszą platformą do realizacji powyższego zadania będzie Arduino ewentualnie Raspberry pi‎. Oba rozwiązania wydają się oferować wszystko czego potrzebuję. Czy mam rację i powinienem wybrać jedno z tych rozwiązań? Może coś przeoczyłem i wspomniane rozwiązania uniemożliwiają realizację któregoś z opisanych wymagań? Czy może jest jakieś inne które spełni wymagania a w realizacji okaże się tańsze? Z góry dziękuję za zainteresowanie i odpowiedź. W przypadku zainteresowania wątkiem chętnie będę go kontynuować ponieważ wybór rozwiązania to dopiero pierwszy krok na długiej drodze do powstania prototypu.
  14. Cześć! Orientuje się ktoś na jakiej warstwie trzeba dać obrys w AUTODESK EAGLE aby płytka zamawiana w PCBWAY miała wycięcia/ inne kształty niż prostokątny? Obrys zaznaczyłem na warstwie DIMENSION. MIlling i nie mam wycięć
  15. Witam, mam pytanie: jescze nie miałem stycznosci z arduino i chciałbym wiedzieć na ile konstruowanie na arduino jest bezpieczne dla osoby niezbyt znającej sie na elektronice (chodzi o możliwość porażenia). Nie wiem jakie natężenie prądu panuje w Arduino i chce wiedzieć czy używanie płytki stykowej i ogólnie arduino, podłączanie do niej kabli, tranzystorów itd. jest bezpieczne, jeśli np. przez przypadek bym jej dotknął (płytki stykowej, albo nóżki diody przez którą płynie prąd) albo gdyby nie było połączenia z GND (z powodu np. wadliwego kabelka) albo jeszcze coś innego? Jeśli nie to czego nie należy robić, albo co robić? Z góry dziękuję za odpowiedź i proszę o wyrozumiałość (jestem początkujący).
  16. Chciałbym przynajmniej w miarę dokładnie zrozumieć czym się różni dławnik względem opornika i jak działa w uproszczeniu. Rozumiem to tak że jego zadaniem jest filtracja zmieniającego się prądu w układzie, zastanawiam mnie jeszcze jego budowa. Jestem ciekaw czy jest identyczna jak i rezystora. Jeśli tak to nazwa jest inna tylko dla tego że jest wykorzystywany w innym celu? Proszę o pomoc w zrozumieniu tego liczę na was ;D
  17. Segitarius

    Roboty oparte na ROS

    Cześć wszystkim, Czy ktoś z was ma pojęcie o tworzeniu robotów na bazie środowiska ROS? Mnogość gotowych bibliotek i szkieletów jest imponująca. Mam olbrzymią ochotę poznać ten system, ale borykam się z brakiem źródeł i tutoriali. To nie arduino, gdzie "świeżaka" przytłacza masa gotowych projektów, na których można się wzorować. Na początek kilka pytań do osób, które już w tym systemie coś stworzyły: Od czego zacząć. (Od przerzucenia się na linuxa Willie domniemam, poprawcie mnie jeśli się mylę) Instalacja środowiska ROS Podpięcie platformy docelowej która będzie w robocie. RPi lub inny wspierany układ. - Jakie są inne obsługiwane? Tego puntu nie jestem pewien: Pobranie jądra frameworka docelowego projektu, łazik, dron, ramię 6 DOF etc .. ? Dostosowanie i/lub dopisanie w pythonie brakujących funkcjonalności.
  18. Robie projekt urządzenia do rehabilitacji ręki spastycznej. W projekcie użyję 5 x Serwo Redox S90 micro (napięcie zasilania 4,8V-6V) na każdy palec*. Mam problem jak się do tego wszystkiego zabrać, a mianowcie jak zasilić seromechanizmy. Nie powinno się zasilać serwo bezpośrednio z tego samego napięcia, które zasila mikrokontroler. Więc muszę zasilić Arduino przez baterię z klipsem, która pasuje do gniazda zasilania w Arduino i wykorzystać stabilizator LM7805 na każdy serw? Czy do ich zasilania wykorzystać baterie o napięciu 1,5 V połączone szeregowo i odpowiednie kondensatory (na wejsciu zasilania, i na wejsciu kazdego serwo)? Czy macie jakieś inne rozwiązania? Proszę o pomoc dla zielonej :0
  19. Elektro06

    Jak zbudować łazika

    Cześć wszystkim interesuje sie łazikami marsjańskimi Jestem nowy i zielony w elektronice np. zawieszenia , procesory itp. itd
×