Skocz do zawartości

Tablica liderów


Popularna zawartość

Pokazuje zawartość z najwyższą reputacją od 16.01.2019 we wszystkich miejscach

  1. 4 punkty
    Powoli zbliżam się do listy moich ukończonych projektów, które nadają się do publikacji na forum. Ten będzie jednym z ostatnich, jeśli nie ostatnim. Oczywiście na jakiś czas, a nie zupełnie. Prawdę mówiąc początkowo miałem wątpliwości, czy w ogóle nadaje się on do publikacji. Po pierwsze nie jest to zupełnie autorskie opracowanie, po drugie nie jestem pewien, czy można nazwać go dostatecznie ambitnym. Co do pierwszej kwestii, to po przejrzeniu poprzednich wpisów doszedłem do wniosku, że większość amatorskich projektów nie jest zupełnie oryginalna - każdy szuka gdzieś inspiracji, wykorzystuje gotowe biblioteki, odtwarza na swój sposób cudze projekty. W końcu zegarów nixie i zegarów binarnych także powstało całe mnóstwo przed moim... A co do drugiej kwestii to cóż... Pozostawiam to ocenie czytelników. Źródłem inspiracji tego projektu był artykuł znaleziony w serwisie Evil Mad Scientist. Jego autorzy postanowili odtworzyć Tennis for two, czyli tytuł uważany za pierwszą grę elektroniczną w historii. Oryginalna wersja z 1958 roku pracowała na analogowym komputerze lampowym, wykorzystując oscyloskop w roli wyświetlacza. Prezentowano ją gościom amerykańskiego Broohaven National Laboratory, odwiedzającym tę placówkę badawczą w ramach dni otwartych. Rozgrywka przypomina trochę późniejszego "Ponga", z tą różnicą, że tutaj obserwujemy kort tenisowy w rzucie z boku. Każdy z dwóch graczy otrzymuje kontroler wyposażony w przycisk i potencjometr. Przycisk służy do serwowania i odbijania piłeczki, pokrętło regulują kąt odbicia. Pośrodku ekranu znajduje się również siatka. Wersja ze strony EMS była typowym "weekendowym" projektem, przygotowanym za pomocą zestawu uruchomieniowego i płytki uniwersalnej. Ja postanowiłem zbudować bardziej "finalną" wersję. Płytkę zaprojektowałem od podstaw, stosując inny mikrokontroler (Atmega32), co wymagało niewielkich zmian w kodzie. Przy okazji poprawiłem kilka bugów znalezionych w oryginalnej wersji (brakowało m.in. jednej instrukcji warunkowej, co w pewnych warunkach pozwalało na oszukiwanie przez wpływanie na zachowanie piłeczki, gdy ta znajdowała się po stronie przeciwnika). Urządzenie zostało zabudowane w kompaktowej, plastikowej obudowie. Dwie mniejsze obudowy okazały się być świetnym materiałem na kontrolery. Sygnał sterujący oscyloskopem (ustawionym w tryb XY) jest generowany przez dwa przetworniki R2R, których sygnały są wyprowadzone na dwa złącza RCA. Do podłączenia oscyloskopu potrzebna jest jeszcze przejściówka na BNC. W ramach ciekawostki mogę dodać, że gra przez kilka miesięcy była prezentowana na wystawie w krakowskim Muzeum Inżynierii Miejskiej. Wytrzymała intensywne użytkowanie przez szkolna młodzież. Obecnie można w nią zagrać odwiedzając krakowski Hackerspace.
  2. 3 punkty
    Pewnego wieczoru chciałem zrobić zabawkę na arduino. Bez wahania postanowiłem zrobić grę 2048. Zrobiłem to! Teraz chcę pokazać proces. Przed pracą opowiem ci kilka słów na temat gry. Została stworzona przez Gabriele Cirulli - 19-letniego włoskiego dewelopera. Gra została napisana w celu ćwiczenia programowania. Mimo że osiągnęła wielki sukces, facet nie kontynuował tworzenia gier. W oryginale znajduje się pole 4 * 4, na którym z prawdopodobieństwem 91% pojawia się kafelek "2" i 9% liczba "4". Celem gry jest zdobycie kafla 2048, przenoszenie wszystkiego na jedną ze stron. Nasza gra będzie wersją uproszczoną. Będzie tylko dwójka, po osiągnięciu 2048 gra się skończy i nie będziesz mógł prowadzić zapisów. To wszystko - pole dla twoich ulepszeń. Zacznijmy od składników. Sercem zabawki jest płytka arduino nano - tania mała płytka. Aby kontrolować potrzebujesz 5 przycisków. 4 wskazują kierunki boków i jeden do przeładowania. Każdy z nich potrzebuje rezystora na 10 kOm. Informaja będzie wyświetlana na ekranie calowym. Pierwszą częścią pracy jest podłączenie wyświetlacza do arduino. Znajdź adres ekranu i2c. Aby to zrobić, pobierz szkic I2C SCANNER. Podłączamy ekran zgodnie z tabelą. Płyta -> Ekran GND ->GND 5V->VCC SCL->A5 SDA->A4 Szkic jest załadowany, ekran jest podłączony. Otwórz monitor szeregowy. Tutaj widzimy adres i2c ekranu. Radzę napisać czarny znacznik z tyłu ekranu. Teraz przygotuj go do wyświetlania danych. Zainstaluj dwie biblioteki (adafruit ssd1306, adafruit gfx). W folderze z biblioteką znajduje się wspaniały plik Adafruit_SSD1306.h. Otwórz go. Tutaj musisz odkomentować linię z rozmiarem twojego ekranu. Po uporządkowaniu wyświetlacza pobierz i otwórz szkic. Kilka słów o algorytmie. Gra rozpoczyna się i tworzy się kafelek "2". Można go rzucać w dowolnym kierunku. Po każdym ruchu na bok, wszystkie płytki powinny zostać przybite do ściany, po złożeniu razem, należy je ponownie przybić do ściany, a wkońcu w przypadkowym miejscu wyrzucić numer 2. Jeśli nie ma pustych miejsc i nie można ułożyć kilku płytek, pojawia się napis GAMEOVER. Jeśli kafelek 2048 zostanie złożony, pojawi się zwycięski komunikat. W void loop znajduje się spora część skomentowanego kodu. Jest potrzebny do debugowania. Jest odpowiedzialny za uzyskanie liczby od 1 do 4 i przesłanie płytek we właściwym kierunku. Konieczne jest określenie pinów, do których podłączone są przyciski i adres ekranu. Teraz możesz zmontować urządzenie na breadboard'e i wypróbować algorytmy. Jeśli robisz wszystko "zgodnie z twoim rozumem", musisz zamówić produkcję płytki z obwodem drukowanym, na której umieścisz nasze komponenty. Ale w przypadku pierwszego prototypu wystarczy go zmontować na płytce prototypowej. Bierzemy zieloną płytkę makietową 5 * 7 cm jako podstawę. Przylutuj na niej Arduino. Nad nim robimy złącze ekranu. Rozmieść scl, sda na a4, a5 - będzie wygodniej lutować. Przyciski lutujemy z rezystorami. Wstaw ekran. Rysujemy strzałki. Graj Demonstracja
  3. 3 punkty
    Hej koledzy i koleżanki;-) Ci którzy są dłużej obecni na Forbocie mnie już trochę znają, ale dla nowych użytkowników których sporo ostatnio, krótki rys historyczny. Moje zainteresownie elektroniką zaczęło się w październiku 2017 roku od jakiejś nudy przy kompie kiedy to przeglądając neta natknąłem się na kursy Forbota. Długo sie nie namyślając zamówiłem najpierw kurs elektroniki podstawowy i od strzału dodatkowy, no i oczywiście zestaw tablic. Jako, że mnie to strasznie wciągnęło, dalej poszło za ciosem: technika cyfrowa i oczywiście kurs arduino poziom pierwszy i drugi . Wciągnęło niesamowicie, chyba głównie dzięki temu, że autorzy kursu potrafili swoją wiedzę przekazać jasno, klarownie i przede wszystkim ciekawie. Dobra koniec tej łzawej historyjki pora na opis projektu. Mój system zbudowany jest z: Arduino MEGA, nodeMCU z esp8266, czujnik zanieczyszczeń powietrza PMS5003; ethernet Shield do wyżej wymienionego, czterech czujników temperaturyDS18B20, dwa czujniki temperatury i wilgotności typu DHT11, jeden DHT22, czujnik ciśnienia i temperatury BMP280 I2C, moduł zegarowy RTC1307 I2C, enkoder z przyciskiem, wyświetlacz LCD 20×4 I2C, dwie listwy diod programowalnych po 4 szt, czujnik deszczu, buzzer bez generatora, moduł 8 przekaźników; kilka dodakowych przekaźników, radiolinia PIN4 Proxima 2szt, przekaźnik czasowy PCM-04 Zamel; kilka krańcówek, bramki logiczne OR; żaróweczka neonka, fotorezystor, kupa przewodów, rezystorów, diod itp., tablet, telefon. Działanie: Układ mierzy temperaturę w dwóch miejscach w domu, na zewnątrz temperaturę w słońcu, przy gruncie i 1m nad gruntem w cieniu. Dodatkowo mierzy ciśnienie atmosferyczne, wilgotność zewnętrzną i wewnętrzną oraz temperaturę wody w CO. Od niedawna także poziom zanieczyszczenia powietrza (budowę urządzonka pomiarowego przedstawię w kolejnym artykule). Zapamiętuje również, najwyższe i najniższe wartości każdego z czujników wraz z datą zdarzenia. Funkcją dodatkową jest alarm wywoływany przy pierwszych opadach deszczu, a także (na wyraźne życzenie żony) alarm informujący kiedy pralka w piwnicy skończyła pracę. Jeśli kogoś interesuje ta ostatnia funkcja odsyłam do mojego tematu na Forbocie. Główną funkcją układu jest sterowanie pracą 8 przekaźników obsługujących min. bramę, furtkę, oświetlenie. Każdy z przekaźników jest sterowany niezależnie: -sygnałem z arduino idącym przez bramki OR do których dochodzą także -sygnały z zewnętrznych włączników naściennych -radiolini sterowanych pilotem, - no i oczywiscie aplikacją BLYNK z telefonu, tabletu... Dopiero sygnał za bramką OR idzie do przekaźnika oraz dodatkowo jako potwierdzenie wraca do arduino. Dioda led na obudowie tabletu informuje o włączeniu przekaźnika także, kiedy tenże jest włączony „poza arduino” przez włącznik naścienny bądź radiolinię. Informacja o tym fakcie wraca do arduino powodując odpowiednie zmiany zmiennych i na bieżąco aktualizując diody led i informacje wyświetlane na LCD 20×4 oraz wyświetlaczu telefonu i tabletu w kuchni na ścianie będącego "centrum sterowania" całością. Wszystkie dane z czujników są na bieżąco wyświetlane i przewijane na LCD 20×4 który to wyswietlacz stał się dodatkowym(po tablecie) i zainstalowałem go w obudowie szafki zawierającej najważniejsze elementy układu. Po wciśnięciu przycisku enkodera wchodzimy w menu opcje gdzie możemy na LCD20x4 sprawdzić najwyższy i najniższy odczyt każdego z czujników, datę tego odczytu oraz zresetować pamięć dla każdego odczytu i czujnika z osobna. Możemy również tym enkoderem sprawdzić w menu stan przekaźników i nimi sterować. Wciśnięcie enkodera jest sygnalizowane przez buzzer. Osobną sprawą jest BLYNK który miał służyć początkowo tylko do kontroli przez telefon nad przekaźnikami, ale po poznaniu jego możliwości, całkowicie zmieniłem założenia i teraz to tablet z zainstalowanym Blynkiem jest głównym wyświetlaczem i sterownikiem całego układu. Trochę bliżej na temat aplikacji BLYNK w moim systemie możecie przeczytać tu. Na tablecie mam podmenu: przekaźniki, czujniki, max i min, historia, alarmy. W menu przekaźniki sterujemy z tableta i telefonu, w dowolnym miejscu na świecie, przekaźnikami, otrzymując z powrotem informację o faktycznym włączeniu przekaźnika(zmiana koloru widgeta oraz wyświetlonego na nim napisu).Ta informacja pojawia się także kiedy przekaźnik zostanie włączony przez kogoś innego(przez włącznik ścienny, radiolinia lub drugie urządzenie:tablet lub telefon). Choć poprzez udostępnienie tokena do naszego projektu takich urządzeń może być więcej. Drugie menu w BLYNK-uto wyświetlanie danych z wszystkich czujników odświeżane co 1 min, oraz małe „diody led” migające i informujące o prawidłowej komunikacji apka-arduino MEGA i apka-ESP(czujnik jakości powietrza). Kolejne menu to ekran z rozwijanym podmenu na którym wyświetlone są nazwy wszystkich czujników i poprzez wybór któregoś z nich możemy sprawdzić(podobnie jak to było na LCD20x4), najniższą i najwyższą wartość datę tego zdarzenia i zresetować pamięć dla każdego czujnika osobno. Następne menu to historia, czyli wykresy. Ja mam ustawione wyświetlanie na wykresach historii odczytów ciśnienia atmosferycznego, wigotności, temperatury CO, temperatury zewnętrznej, oraz osobny wykres dla czujnika jakości powietrza. Ostatnie menu w BLYNK-uto alarmy. Po pojawieniu się na odpowiednim pinie arduino sygnału z czujnika deszczu lub sygnału o końcu pracy pralki, na wyświetlaczu LCD20x4 przestaje się przewijać informacja o dacie, godzinie i odczytach z czujników, a wyświetla się info o alarmie z odpowiednią treścią, albo o pralce albo o deszczu. Dodatkowo listwy diod led migają na niebiesko(pralka) lub na czerwono(deszcz). Po wciśnięciu enkodera, wyłączeniu na tablecie lub telefonie albo upływie ustawionego czasu alarm wyłącza się. Informacja o alarmie pojawia się jako notyfikacja także na tablecie i telefonie, w sposób wizualny i dźwiękowy, poprzez wybraną melodię z pamięci talefonu/tableta. Ostatnio dołożyłem dodatkowo obsługę przekaźników głosowo poprzez Google Assistant. Jeśli kogoś bliżej interesuje ta kwestia to zapraszam tutaj. Kolejną miłą opcją jest podpięty do tabletu poprzez bluetooth wzmacniacz klasy D z pilotem spięty z głośnikami zainstalowanymi w kuchni. Google assistant pozwala na bezdotykowe, głosowe włączanie ulubionego przeboju z YT, radia itp. Co do przekażnika czasowego i krańcówek i przeakźników to mają one zastosowanie przy sterowaniu bramą garażową i oświetleniem garażu. Bramą garażową steruję z przycisku naściennego, pilotów radiowych, telefonu, tabletu. Jednak dodatkowo jest założony przekaźnik czasowy który po uplywie zadanego czasu zamyka otwartą bramę niezależnie od systemu. Również włącznik naścienny jest niezależny, więc nawet jak by sytem padł(co się nie zdażyło za ostatnie12 miesięcy) mogę sterować bramą. Krańcowki zainstalowane przy bramie podają informację do Aruduino, a te wysyła info do Blynka który informuje mnie notyfikacją, gdziekolwiek bym nie był, że właśnie została otwarta lub zamknięta brama garażowa. Kolejną sprawą jest automatyka oświetlenia garażu. Zrobiona "analogowo" tzn. jesli świeci się lampa z czujnikiem ruchu przed garażem, a brama jest calkowicie otwarta, zapala się całe oświetlenie garażu. Co znakomicie ułatwia nocne parkowanie. Chyba tyle. Aktualnie pracuję nad stroną internetową(dziękuję wszystkim cierpliwym webmasterom z Forbota za pomoc) postawioną na RPi, która będzie pokazywać światu jakie to fajne powietrze mamy w Kryrach;-). W planach też pomiar siły i kierunku wiatru. Gdyby ktoś chciał poczytać o początkach tego projektu to tutaj, a cały worklog jest tu. Cały sketch sterujący arduino i Blynkiem tutaj. Teraz kilka zdjęć i filmów. Wnętrze szafki z Arduino i całym osprzętem, płytka główna przed i po tuningu: "Centrum": Kilka slajdów z BLYNK-a: Wzmacniacz i głośniki w kuchni: Jeden film mówi więcej niż tysiąc słów więc: Prototyp: Aktualny: LCD dodatkowy: Jeszcze LCD z dołożoną obsługą PMS5003: Działanie BLYNK-a i przekaźników: BLYNK, "centrum", google assistant: Google Assistant w praktyce: Dziękuję za poświęcony czas i pozdrawiam wszystkich. Lajkujcie, subskrybujcie bądzcie moimi followersami i co się tam jeszcze robi
  4. 3 punkty
  5. 3 punkty
  6. 2 punkty
    Do nauki to ja bym raczej nie wystawiał serwera na świat — równie dobrze można się uczyć w bezpiecznej sieci lokalnej, bez obawy o to, że nasza malinka zaraz się stanie częścią chińskiego botnetu. Jeśli koniecznie chcesz udostępniać dane światu, to jest kilka możliwości obejścia twoich ograniczeń, ale niestety wiążą się one z robieniem wszystkiego inaczej, niż gdybyś taki serwer sam stawiał. Możesz na przykład generować statyczne strony i wgrywać je na jeden z darmowych hostingów, na przykład Github Pages. Albo jeśli chodzi tylko o same dane, to skorzystać z serwisu takiego jak http://adafruit.io, gdzie ci je nawet od razu ładnie zaprezentują.
  7. 2 punkty
  8. 2 punkty
    Na zdjęciu gdzie jest LCD widać wystające śruby M3, przykleiłem je do przedniego panelu jakimś mocniejszym klejem. Płytkę można zdemontować odkręcając nakrętki. Wszystko jest w pełni rozbieralne. Przedni panel to zwykły wydruk na papierze i zalaminowane, przyciski wystają minimalnie ponad plastik obudowy, tak że ten nadruk fajnie się opiera o nie, efekt trochę jak przy membranowych przyciskach.
  9. 2 punkty
    Witam, mój system powstał z praktycznej potrzeby zautomatyzowania systemu podlewania i w celu rozpoczęcia przygody z elektroniką – wyszedłem z założenia, że jak teraz nie zrozumiem, jak działa to wszystko co jest dookoła, to za chwilę będzie to tak złożone, że nie zdążę już tego zrozumieć I generalnie myślę, że się udało – zrobiłem dokładnie to, co zamierzałem i w dodatku działa OPIS DZIAŁANIA SYSTEMU System w założeniu miał być jak najprostszy (tzn. działać przy jak najmniejszej potrzebie ingerencji człowieka w porównaniu do skomplikowanych systemów programowalnych, które są na rynku). Steruje on trzema liniami rozprowadzonymi w ogrodzie: woda w kranach, zraszacze trawników, linie kroplujące. Sterowanie odbywa się za pomocą elektrozaworów zasilanych z przekaźników (moduł 4 przekaźników). Przekaźnikami steruje Arduino na podstawie: włączenia/wyłączenia przełącznika, upłynięcia maksymalnego czasu określonego dla każdej linii (po upłynięciu tego czasu zawór zostaje zamknięty). System jest zasilany wodą z zestawu hydroforowego (żeby było odpowiednie ciśnienie), który pobiera wodę z ze zbiornika na deszczówkę (ZBIORNIK 1). Ponieważ nie jest on zbyt duży (3 m3) to istniała konieczność dopompowywania wody z drugiego zbiornika na deszczówkę (ten już ma 12 m3). Moje rozwiązanie opiera się na zamontowaniu w zbiorniku 1 dwóch czujników poziomu cieczy i pozwala na automatyczne dopompowywanie wody ze zbiornika 2 do zbiornika 1, gdy w tym poziom spadnie poniżej dolnego czujnika. Pompa, która jest w zbiorniku 2 wyłącza się, gdy poziom w zbiorniku 1 podniesie się powyżej górnego czujnika. REALIZACJA Do sterowania zaworami wykorzystałem Arduino. Początkowo plan był taki, żeby wszystko zrobić bez mikrokontrolera. Jednak Arduino jest mi potrzebne w drugiej wersji urządzenia (już się buduje), o której napisze poniżej. Na czystej elektronice (bez programowania) oparłem moduł sygnalizacji poziomu i uzupełniania wody w zbiorniku. Bazując na dwóch czujnikach poziomu wody mogę określić trzy stany wody w zbiorniku: niski, średni, wysoki. Zależało mi, żeby pompa uzupełniająca wodę zaczynała pompować, gdy woda w zbiorniku osiągnie poziom niski, a kończyła, gdy osiągnie stan wysoki. Poprzez umieszczenie czujników jak najdalej od siebie, uzyskałem samoczynne uzupełnianie zbiornika. Do tego wykorzystałem dwa układy scalone: bramkę OR oraz NAND co pozwoliło zastosować trzy diody oznaczające poziom wody. Logika włączania tych diod jest następująca: Bramkę NAND wykorzystałem dodatkowo jako przerzutnik bistabilny, który pamięta czy pompa jest włączona, czy wyłączona. Oto płytka sporządzona samodzielnie na potrzeby projektu: KONSTRUKCJA Całe urządzenie udało się zamknąć w standardowej obudowie hermetycznej z wyprowadzeniem przewodów do zasilania, podłączenia zaworów, czujników poziomu wody i przewodu sterującego pompą. Do wykonanie „wtyczek” do zaworów wykorzystałem tworzywo, które mięknie w 60 stopniach i w ciepłej wodzie robi się plastyczne – można wszystko ulepić. Chodziło o to, że przy zaworach, jak najbliżej, powinny się znaleźć diody prostownicze i dlatego zrobiłem wtyczki z zatopionymi diodami. Jest to bardzo wygodne przy rozmontowywaniu systemu na zimę. Działanie systemu widać na poniższym filmie (na uchwycie wiszą czujniki poziomu wody). System działał już jeden sezon, także jest sprawdzony. PLANY NA PRZYSZŁOŚĆ Druga wersja urządzenia będzie miała dołączone czujniki deszczu i wilgotności gleby, będą pobierane komunikaty pogodowe z lotniska i będzie sterowanie zaworami przez wifi z telefonu. Chcę także dodać obsługę kalendarza do określenia czasu godziny, gdy system ma się włączać. Długość podlewania będzie sterowana czujnikami wilgotności i deszczu a włączenie podlewania uzależnione od przewidywanej pogody. Myślę, że więcej do systemu podlewania nie jest potrzebne. Musze powiedzieć, że budowa tego urządzenia dała mi wiele satysfakcji, bo nie zajmuję się zawodowo elektroniką ani programowaniem. Chciałbym szczególnie podziękować Trekerowi za kursy, dzięki którym było łatwo zacząć przygodę z elektroniką oraz Markowi za cenne uwagi i przekazaną wiedzę.
  10. 2 punkty
    Trochę za dużo tych punktów na tak proste pytanie Użycie mikrokontrolera jest akurat bardzo fajne. Po pierwsze dzięki niemu mamy zgodność z innymi modułami serii MKR od Arduino. Jeśli nie chcemy bawić się FPGA, dostajemy gotowy wsad oraz biblioteki i wszystko działa jak na zwykłym MKR z akceleratorem. Czyli zwykłe Arduino z kamerą, HDMI oraz WiFi. Druga zaleta, już dla miłośników FPGA to czas syntezy. Nawet prosty projekt z małym softprocesorem zajmuje nieco zasobów i wydłuża czas syntezy. Więc nawet banalne miganie diodą stanie się o wiele bardziej skomplikowanym projektem. Najczęściej takie rozwiązanie jest też znacznie trudniejsze - inne środowisko do syntezy, inne do programowania, czasem nawet różne programatory. W każdym razie nie tak proste jak szkic w Arduino IDE. Na koniec najważniejsze. Wspomniany mikrokontroler jest programatorem FPGA. Gdyby go nie umieszczono na płytce, konieczne byłoby posiadanie USBBlastera - który też kosztuje i w sumie ma na pokładzie mikrokontroler. Rozwiązanie użyte w MKR jest bardziej uniwersalne, miłośnicy Arduino mają prostotę i pełną zgodność, a zwolennicy FPGA programator. Warto też pamiętać, że na płytce jest już pamięć 8MB SDRAM, więc dostajemy mikrokontroler oraz pamięć i nie musimy z niczego rezygnować.
  11. 2 punkty
    Da się zamienić, trzeba tylko popoprawiać definicje pinów z Bascoma na Bascoma AVR skompilować i powinno działać. Generalnie składnia jest taka sama ale w Bascomie AVR piny definiuje się albo przez PortB.1 albo PinB.1, nie pamiętam które z tych słów bo to jest pokręcone. Instalujesz demo Bascoma AVR, przeklajasz kod, poprawiasz definicje zgodnie z heplem, kompilujesz i programujesz. Musisz zaopatrzyć się w jakiś programator USB, którym zaprogramujesz spod Bascoma. Ewentulanie wiem, że jakoś się da przez Arduino zaprogramować jakiegoś AVRa, ale to już nie moja bajka.
  12. 2 punkty
    Na razie testowałem w warunkach domowych ("doniczkowych"). Generalnie te z Botlandu działają - można je dobrze wykalibrować. Oczywiście wszystko okaże się po włożeniu ich do ziemi (znacznie "trudniejsze" warunki niż w doniczce), ale nawet gdyby wytrzymały tylko jeden sezon to cena 5,90 zł jest taka, że można je wymienić. Tu zastanawia mnie inny problem - chciałbym czujniki porozmieszczać w różnych miejscach ogrodu i to będzie 15-20 m od urządzenia. Zastanawiam się czy nie będzie zakłóceń sygnału. W zbiorniku zamocowałem pionową rurkę plastikową i do niej mogę przyczepić czujniki na jakim chcę poziomie.
  13. 2 punkty
    Ciekawa konstrukcja, mam zamiar w niedalekiej przyszłości zbudować "inteligentną doniczkę" więc pewnie przy okazji zerknę na ten projekt. Myślałeś już o jakiś konkretach? Ostatnie przeglądałem ofertę tych czujników i jestem ciekaw jak z ich odpornością na to co mierzą - na wilgoć. Typowe czujniki wilgotności gleby (te na 1$) składające się z 2 odkrytych miedzianych płytek szybko korodują. Na pewno lepsze są czujniki pojemnościowe, galwanicznie odizolowane od mierzonego środowiska. Ale nie wiem jak jest z czujnikami deszczu, które pewnie działają na podobnej zasadzie. To pytanie będzie głupie, ale cóż... Czy ten pływak mocuje się na pokrywie zbiornika czy można jakoś od boku bliżej dna - tak by wskazywał kiedy zbiornik jest prawie pusty?
  14. 2 punkty
  15. 2 punkty
    Nie wierzę!. 30 lat temu AutoLISP to była podstawa ujarzmiania AutoCAD'a. O ile pamiętam, jego początki dotyczyły sztucznej inteligencji. Aż się łza w oku kręci. Zalety? Wówczas dla mnie: notacja polska zapisu wyrażeń, dyscyplina kodu, nie puszczał niechlujstwa: Lost in Stupid Parentheses. Po Fortranie, to była dla mnie prawdziwa rewolucja i postawiłem w życiu sporo "nawiasów", choć nie jestem zawodowym programistą - inna branża. Będę to śledził
  16. 2 punkty
    Tym razem prezentuję jeden z moich starszych projektów. Powstał on w 2013 roku, będąc pierwszą poważniejszą próbą umiejętności zdobytych podczas nauki programowania mikrokontrolerów AVR. Wszystko zaczęło się jakiś czas wcześniej, gdy do moich rąk trafił stary, polski telefon z tarczą numerową, wyprodukowany przez przedsiębiorstwo RWT w latach sześćdziesiątych. Któryś z poprzednich właścicieli tego urządzenia potraktował je jako źródło części - wewnątrz brakowało większości elementów potrzebnych do normalnej pracy. Na szczęście obudowa zachowała się w idealnym stanie. Przywrócenie telefonu do stanu oryginalnego mijało się z celem, więc w najlepszym razie mógłby on służyć za stylową dekorację. W pewnym momencie wpadłem na inny pomysł co do zastosowania tego zabytku. Mniej więcej w tym samym czasie udało mi się bowiem zdobyć kilka modułów GSM Motorola D15, wymontowanych ze złomowanych centralek alarmowych. Rozwiązanie nasuwało się samo - zrobić z tego "komórkę". Urządzenie działa w oparciu o mikrokontroler Atmega328, którego głównym zadaniem jest sterowanie modułem GSM za pomocą komend AT. Układ zajmuje się także zliczaniem impulsów wysyłanych przez tarczę numerową podczas wybierania numeru, a także generuje sygnał PWM udający sygnały wybierania i zajętości, Najbardziej problematycznym elementem był dzwonek, wymagający do działania cyklicznych zmian przepływu prądu. Zadanie to jest realizowane prze prosty półmostek H. Ponieważ dzwonek wymaga do pracy napięcia co najmniej kilkudziesięciu V, w grę wchodziły dwa rozwiązania: zbudowanie przetwornicy albo przewinięcie uzwojeń. Zdecydowałem się na drugie z nich. Urządzenie wyposażone jest we wbudowany akumulator litowo-polimerowy oraz scalony kontroler ładowania MCP73831T. Podczas budowy telefonu popełniłem kilka błedów oraz poszedłem na kilka kompromisów, na które dzisiaj w żadnym razie bym się nie zgodził. Najważniejsze problemy tej konstrukcji to: Pojawiające się okazjonalnie zakłócenia, będące wynikiem zastosowania modułu GSM bez różnicowego toru audio. Dziś zastosowałbym któryś z tanich i ogólnodostępnych modułów GSM. Brak stabilnego zasilania. Cała elektronika jest zasilana bezpośrednio napięciem akumulatora. Nie stanowi to problemu, ponieważ wartości mieszczą się w dopuszczalnych warunkach pracy wszystkich elementów, a wraz z rozładowywaniem akumulatora zmienia się wspólny punk odniesienia, wyznaczany przez VCC. Dzisiaj jednak zastosowałbym przetwornicę S7V8F3. Program został napisany w sposób blokujący, w oparciu o "delay'e" oraz pętle oczekujące na wykonanie określonego zadania. Z uwagi na powyższe projekt w końcu doczeka się zapewne uwspółcześnionej rewizji.
  17. 2 punkty
  18. 1 punkt
    Opis konstrukcji Całość jest wynikiem obserwacji innych tego typu konstrukcji oraz własnych przemyśleń i możliwości. Konstrukcja to typowy drewniak (tania w budowie). Część elementów posiadałem z innych projektów. Całość jest sterowana z wykorzystaniem GRBL 0.9j i Arduino Nano 3.0. Dodatkowo, aby uniezależnić się od PC gcode wysyłany jest z Rasp Pi Zero W bezpośrednio do Arduino. Pole robocze frezarki to ok 240x 200mm. Wstępnie zostanie ono ograniczone limitami w oprogramowaniu GRBL. Docelowo prawdopodobnie zainstaluję krańcówki. Prześwit osi Z 64mm. Formatki ze względu na cenę całości zostały zamówione ze sklejki szalunkowej co było błędem. Różnice w grubości poszczególnych arkuszy dochodziły do 2mm (z tego powodu dostałem zwrot 50% opłaconych za sklejkę środków). Wykaz głównych elementów konstrukcji: 1. Łożyska liniowe SC12UU -12 sztuk 2. Łożyska liniowe SC12VUU -2 sztuki 3. Śruba trapezowa Tr10x2 - 540mm, 440mm, 220mm 4. Sprzęgła elastyczne 6,35x10 -4 sztuki 5. Uchwyty prowadnic liniowych 12mm - 4 sztuki 6. Sklejka szalunkowa 21mm (ok. 1,5m kwadratowego) 7. Arduino Nano 3.0 8. Rasp Pi Zero W - 1szt 9. Zasilacz 12VDC, 24VDC, 48VDC - po kilka sztuk 10. Silnik krokowy NEMA23 - 4sztuki 11. Prowadnica liniowa 12mm - 3x400mm, 2x500mm, 2x200mm 12. Nakrętka śruby Tr10x2 - 3 sztuki 13. Uchwyty śruby - łożyskowane - 6 sztuk 14. Uchwyty prowadnic liniowych 12mm - 10szt 15. Wrzeciono 300W - 1 sztuka 16. Uchwyt wrzeciona 52mm - 1 sztuka 17. Sklejka szalunkowa 21mm z cięciem (formatki wg projektu) 18. Śruby wg potrzeb 19. Sterownik silnika krokowego - klon TB6600 3 sztuki Wykaz formatek ze sklejki: 500x400 1x - podstawa 542x350 2x - boki 400x59 1x - przód (pod montaż uchwytu śruby poruszającej stolik oś Y) 400x70 1x - tył (pod montaż uchwytu śruby poruszającej stolik oraz silnika krokowego oś Y) 400x200 1x - podstawa osi X 400x121 2x - tylne półki tworzące wnękę na elektronikę 390x280 1x - stolik 142x242 1x - podstawa osi Z 142x38 1x - dół podstawy osi Z (montaż łożyska śruby osi Z) 142x50 1x - góra podstawy osi Z (montaż łożyska śruby osi Z oraz silnika krokowego) 142x130 1x - oś Z (pod montaż wrzeciona) Soft - kontroler GRBL W moim przypadku, posiadam klon arduino nano z układem CH341 instaluję driver Arduino driver ch341ser tworzący wirtualny port COM do komunikacji z mikroprocesorem. Następnie oprogramowaniem Xloader wgrywamy soft na Arduino i gotowe. Soft - wysyłanie g-code do kontrolera GRBL Teraz potrzebny nam soft na PC do wysyłania komend dla naszego kontrolera GRBL. Soft jest zarówno pod windows jak i pod linuxa. Ja w tym celu wykorzystuję minikomputer Rasp Pi Zero W (zamiast stacjonarnego PC). Wykorzystanie Rasp Pi Zero W jako PC do wysyłania G-code niesie ze soba pewne następstwa. Zasięg Wi-fi okazał się mały ze względu na słabą antenkę w malinie. Dodatkowo wydajność 1 rdzeniowego PC z 512MB RAM jest mizerna. Z tego powodu testowałem wiele rozwiązań by wybrać najbardziej dla mnie optymalną wersję. Skończyło się na instalacji Raspbian Lite, doinstalowaniu lekkiego środowiska graficznego oraz serwera VNC (by w łatwy sposób przegrywać nowe g-code do wykonania). Testowałem 2 programy do obsługi frezarki z systemu linux maliny: 1. bCNC. 2. Universal Gcode Sender - ten program pozostawiłem. Po wgraniu oprogramowania na malinkę wystarczy podpiąć do malinki po USB Arduino z wgranym Grbl, wybrać port COM i połączy się z oprogramowaniem. Zobaczymy wtedy ustawienia konfiguracyjne naszego softu. Ich opis jest zależny od wersji. W moim wypadku Konfiguracja GRBL 0.9 Schemat elektryczny Poza schematem jest chińskie wrzeciono 300W, które załączam ręcznie. Prędkość jest sterowana z wykorzystaniem regulatora PWM 60VDC, 20A i zasilana napięciem 48VDC. Działanie Po wstępnej konfiguracji możemy przystąpić do testów naszego CNC. 1. Frezowanie napisów w płytkach plastikowych 2. Wyfrezowane płytki pod ESP8266 A oto filmiki z działania urządzenia: Podsumowanie Na pewno konstrukcja nie jest najlepsza, 3 prowadnice na jednej osi (wykorzystałem posiadane prowadnice i łożyska).Dość cienkie prowadnice, dodatkowo swobodnie wiszące. Przy pierwszych testach wyszło, iż śruba trapezowa na osi X jest do wymiany (na odcinku 100mm ma luz ponad 0,3mm). Pozostało zrobić osłony śrub trapezowych i prowadnic osi Y, w planach osłona z pleksy aby wióry nie rozsypywały się przy frezowaniu poza urządzenie. Być może później jakiś odciąg. Oczywiście pojawi się wyłącznik awaryjny oraz krańcówki. W sumie jestem zadowolony. Podstawowy cel - grawerowanie PCB wraz z wierceniem, wycinanie formatek ze sklejki i pleksy bezproblemowe. W razie dodatkowych pytań postaram się w miarę możliwości udzielić odpowiedzi. Jeśli ktoś chciałby dokładniejsze informacje na temat wykonania całości po polecam pobranie i przejrzenie pliku Frezarka CNC.zip (33 strony powinny zaspokoić ciekawość). Frezarka CNC.zip
  19. 1 punkt
    @rziomber, dziękuję za zapytanie. Wydaje mi się, że w tym przypadku ciężko będzie zakwalifikować takie programy jako DIY. Oczywiście doceniam pracę, temat jest ciekawy, jednak w tej akcji zależy nam głównie na opisie fizycznych projektów. Może w takim razie opiszesz to wszystko jako jeden projekt tego obserwatorium astronomicznego i przy okazji opiszesz całą część elektroniczną + wspomniane programy? -------- Mała aktualizacja FAQ: dopisany został punkt, który mówi, że do akcji nie będę kwalifikowane projekty polegające przeróbce gotowego urządzenia, szczególnie chodzi o przypadek wgrania nowego oprogramowania (typu rozkręcamy moduł, wgrywamy EasyESP i opisujemy to jako DIY). Tym razem liczymy jednak na ciekawe, autorskie rozwiązania, które wymagają odrobinę większego nakładu pracy Oczywiście zasada ta jest ważna "od teraz" i nie dotyczy projektów, które zostały już opisane lub czekają obecnie na akceptację.
  20. 1 punkt
    Tak właśnie myślałem żeby przerobić alternator usuwając z niego regulator 12V DC i dać regulacje na 36V
  21. 1 punkt
    Każde rozwiązanie jest dobre, jeśli się sprawdza, a co ważniejsze daje satysfakcję z własnoręcznie wykonanej "zabawki"
  22. 1 punkt
    JA się skupiłem na arduino nano - kwestia kosztów płytki, sposobu podpinania oraz wielkości. Do tego mam zaprojektowaną płytkę pcb która dość mocno ułatwia pracę - nie trzeba większości urządzeń podpinać kablami tylko są już gotowe ścieżki. pierwsza płytka przygotowana pod drivery ldd firmy meanwell druga bardziej uniwersalna do montażu za wyświetlaczem.
  23. 1 punkt
    W skrypcie po stronie serwera zrób funkcję typu (w przypadku PHP): function getCurrentStatus($what) { // tu w przyszłości będzie pobieranie danych z bazy, a na dzisiaj... return rand(10,40); // tak na przykład } i jej używaj do pobierania danych do odpowiedzi na zapytanie AJAX-a.
  24. 1 punkt
    no gotowe rozwiązania są zawsze droższe. nasze DIY jest rozwojowe, otwierasz obudowe i dolepiasz forbot za przewodnika - dla mnie był, bo o mikrokontrolerach nie miałem zielonego pojęcia. droga jest sąda pH dobrej jakości - polska. No i nasz sytem ma wifi powiadamianie SMS też miałem w planach, ale na tanim module GSM, nawet testowałem.
  25. 1 punkt
    Znowu podstawy C się kłaniają. Poczytaj jak reprezentowane są napisy, podpowiem że trzy znaki to za mało na przechowywanie napisu o długości 3.
Tablica liderów jest ustawiona na Warszawa/GMT+01:00
×