Adder Luty 7, 2021 Autor tematu Udostępnij Luty 7, 2021 Konieczna dokumentacja wideo. Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 10, 2021 Autor tematu Udostępnij Luty 10, 2021 (edytowany) Dzień dobry! Dzisiaj z rana naszła mnie taka refleksja, rada dla początkujących programistów: Nigdy nie bierzcie się za projekty, w których nie wiecie z góry jak napisać każdą, pojedynczą linijkę kodu, o ile nie chcecie wsiąknąć w długi, samotny i bolesny proces samokształcenia. Ten przypadek dotknął mnie. Nauczyłem się już: - środowiska Processing IDE - obsługi portu szeregowego i jego niuansów - operowania na klasach 🤯 - radzenia sobie z systemowymi błędami kompilacji (najnowszy OSX gryzie się z funkcją size() w Proccesing 3.x) potrzebne są łaty i obejścia - porządkowania rozrastającego się kodu... To wszystko zamiast wziąć się za Kurs Arduino część II 😭😭😭 I ten czas! Czas magicznie przyśpieszył.... A... No i czuję się tak, jakbym dojrzewał już do tego Pythona... Coś chyba zaskoczyło mi w głowie. Zupełnie inaczej dzisiaj patrzę na wiele rzeczy niż np. miesiąc temu... 🙂 Edytowano Luty 10, 2021 przez Adder Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 10, 2021 Autor tematu Udostępnij Luty 10, 2021 A tu aktualny stan projektu. Zalążek Playera sygnału z HC-SR04 🙂 Zapewniam, że to będzie działać. Kiedyś...🤣😂 Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 11, 2021 Autor tematu Udostępnij Luty 11, 2021 (edytowany) Dobry wieczór! Wreszcie dolny wyświetlacz działa jak należy Edytowano Luty 11, 2021 przez Adder 1 Cytuj Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
Adder Luty 11, 2021 Autor tematu Udostępnij Luty 11, 2021 I screenshot😀😀😀 Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 12, 2021 Autor tematu Udostępnij Luty 12, 2021 (edytowany) Dobry wieczór! Grafika powoli zaczyna być kończona. Zrobiony przycisk STANDBY. Jest trochę obciachowy, ale mam już dość tej dłubaniny (przynajmniej na dzisiaj). 🤕 Został jeszcze główny wyświetlacz. Najtrudniejsza część. Mam wiele pytań, ale nie wiem jak je zadać. Ten kod nie jest banalny (dla mnie). Edytowano Luty 12, 2021 przez Adder Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 13, 2021 Autor tematu Udostępnij Luty 13, 2021 Dzień dobry! Aktualny stan kodu w Processing. import processing.serial.*; //***GENERAL*** boolean OFF=true; String Mode="Idle"; //***SERIAL*** PrintWriter output; Serial ArduinoPort; String ArduinoData; //***INTERFACE*** movingMessage IdleMessage; movingMessage OffMessage; PGraphics pg; PFont Digital; PFont Neon; String Message = ""; class movingMessage { float x; String Text; movingMessage (float _x, String _text) { x = _x; Text = _text; } void drawMessage() { pg.beginDraw(); pg.clear(); pg.background(28); pg.fill(3,26,26); pg.noStroke(); for (int y=0; y<33; y=y+3) { for (int x=0; x<601; x= x+3) pg.rect(x, y, 2, 2); } pg.textFont(Digital); pg.fill(255); pg.text(Text,x,24); pg.endDraw(); image(pg,200,518); } void move_x(float amount){ x=x+amount; if (x<-1200) x=600; } } //***SERIAL*** void GetMode() { String Signal; while (ArduinoPort.available()>0) { Signal = ArduinoPort.readStringUntil('\n'); if (Signal != null) { Signal=trim(Signal); if (Signal.equals("R")) { ArduinoPort.write("C"); ArduinoPort.clear(); Mode="Rec"; delay(10); java.awt.Toolkit.getDefaultToolkit().beep(); } if (Signal.equals("P")) { ArduinoPort.write("C"); ArduinoPort.clear(); Mode="Play"; delay(10); java.awt.Toolkit.getDefaultToolkit().beep(); } } } } void Record() { output=createWriter ("ArduinoData.csv"); if (ArduinoPort.available()>0) { println("Recording..."); while(Mode=="Rec") { ArduinoData = ArduinoPort.readStringUntil('\n'); if (ArduinoData !=null) { ArduinoData=trim(ArduinoData); output.print(ArduinoData); output.flush(); output.close(); ArduinoPort.clear(); Mode="Idle"; println("Arduino Data: " + ArduinoData); println("Return to Idle. Action requested..."); } } } } //***INTERFACE*** void SetupBoard() { background(28); Neon=createFont("NeonLight-Regular.ttf",14); Digital=createFont("advanced_dot_digital-7.ttf",20); fill(3,26,26); noStroke(); for (int y=30; y<490; y=y+5) { for (int x=20; x<1480; x= x+7) rect(x, y, 5, 3); } for (int y=30; y<490; y=y+5) { for (int x=1500; x<1530; x= x+7) rect(x, y, 5, 3); } for (int y=30; y<490; y=y+5) { for (int x=1540; x<1570; x= x+7) rect(x, y, 5, 3); } fill(20); ellipse(1300,530,14,14); fill(51); ellipse(1300,530,10,10); fill(20); ellipse(1400,530,14,14); fill(51); ellipse(1400,530,10,10); fill(20); ellipse(1540,530,34,34); fill(35); ellipse(1540,530,30,30); fill(152,0,2); ellipse(1540,530,10,10); fill(35,161,164); rect(10,20,1,530); rect(10,20,10,1); text("Signal", 25,20); fill(35,161,164); rect(190,505,1,45); rect(190,505,10,1); text("Message line", 205,505); fill(35,161,164); rect(1280,505,1,45); rect(1280,505,10,1); text("Record", 1300,505); fill(35,161,164); rect(1380,505,1,45); rect(1380,505,10,1); text("Play", 1400,505); fill(35,161,164); rect(1510,505,1,45); rect(1510,505,10,1); text("On/Off", 1530,505); rect(1490,20,1,530); rect(1490,20,10,1); text("Amp", 1505,20); fill(35,161,164); textFont(Neon); text("Adder PATHEPHONE", 20,550); fill(214); for(int y=130; y<490; y=y+5) rect(20,y,5,2); fill(3,26,26); for (int y=518; y<550; y=y+3) { for (int x=200; x<800; x= x+3) rect(x, y, 2, 2); } } void mouseClicked() { if (OFF) { if (mouseX<1560 && mouseX>1525 && mouseY<550 && mouseY>525) { fill(100); ellipse(1540,530,34,34); fill(35); ellipse(1540,530,30,30); fill(0,150,255); ellipse(1540,530,10,10); Message = "Idle. Awaiting action... press Play or Record on your Arduino. Forbot rules!"; OFF=false; } } else { if (mouseX<1560 && mouseX>1525 && mouseY<550 && mouseY>525) { fill(20); ellipse(1540,530,34,34); fill(35); ellipse(1540,530,30,30); fill(152,0,2); ellipse(1540,530,10,10); Message =" "; OFF=true; } } } void setup() { size(1585,560,P3D); pg = createGraphics(600, 35); String ArduinoSignal = Serial.list()[2]; ArduinoPort = new Serial(this, ArduinoSignal, 9600); println(Message); SetupBoard(); IdleMessage=new movingMessage(600,Message); } void draw() { if (!OFF) { OffMessage.drawMessage(); OffMessage.move_x(-1); } else { IdleMessage.drawMessage(); OffMessage= new movingMessage(600,"Idle. Awaiting action... press Play or Record on your Arduino. Forbot rules!"); if (Mode=="Idle") IdleMessage.move_x(-1); } if (!OFF) { switch (Mode) { case "Idle": { GetMode(); break; } case "Rec": { Record(); break; } case "Play": { println (Mode); break; } } } } Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 13, 2021 Autor tematu Udostępnij Luty 13, 2021 Dobry wieczór! Myślałem, że dzisiaj wezmę się za wyświetlacz amplitudy, ale jeszcze poprawiałem rekorder. W dolnej belce dodałem: 1) Ustawianie jasności paneli ledowych i oprogramowałem. Bardzo fajnie działa 2) Przycisk wgrywania zapisanego sygnału 3) Przyciski przeglądu zapisu sygnału. 4) Powalczyłem też z mouseClicked(), mousePressed() i mouseReleased(). Sprawiło mi trochę kłopotu zrozumienie jak one naprawdę działają. Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 14, 2021 Autor tematu Udostępnij Luty 14, 2021 (edytowany) Niieee!!!!! Zostawiłem włączony komputer na noc, a w nocy wyłączyli prąd.... Cały dzień roboty w ...... Dlaczego nie wrzuciłem tu kodu??? Nie mówiąc o zapisaniu pracy😫😫😫😡..... Uuuuuuuuhhhh!!!! Ale jestem zły!!!! Edytowano Luty 14, 2021 przez Adder Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 14, 2021 Autor tematu Udostępnij Luty 14, 2021 Wyświetlacz amplitudy sygnału oprogramowany! 😀 To jakby wyjazd z drogi gruntowej na asfaltówkę. Poniżej test z losowymi wartościami. Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 15, 2021 Autor tematu Udostępnij Luty 15, 2021 Dzień dobry! Powoli zbliżam się do końca projektu rekordera dźwięku na bazie HC-SR04. Strasznie jestem ciekawy wyniku! 😬 Pojawiła się refleksja co dalej. Opanowałem w stopniu dostatecznym Processing. To wspaniałe narzędzie i język programowania! Szkoda mi to teraz stracić - zapomnę w miesiąc o co w nim chodzi. Myślę cały czas o zdjęciu za pomocą czujnika odległości. Przy użyciu Processing to byłoby jak najbardziej możliwe. Niestety, zrobiłem mały research, z którego wynika, że koszty budowy mechaniki poruszającej w pionie i poziomie czujnikiem przerosłyby mój budżet. Rozważałem wykorzystanie części ze starej kserokopiarki, ale przeróbki zajęłyby mi chyba lata.. Można byłoby rozważyć budowę urządzenia poruszanego ręcznie, ale moje zdolności manualne są kiepskie. Nie wyobrażam sobie siebie wykonującego samodzielnie potrzebne elementy. Można byłoby też kupić jakiś zestaw "małego konstruktora" i coś skręcić, ale też mi to nie pasuje (koszty + nieprawdopodobna rzeźba). Tak więc jestem w kropce... Na pewno zrobię sobie jeszcze radar z fajną wizualizacją. Czyli coś, jakby zdjęcie w jednym wymiarze. Ale takie rzeczy ktoś już pewnie wcześniej robił, więc nie jest to aż tak ekscytujące. Proszę podpowiedzcie koledzy co byście radzili. Jak wejść na kolejny level wtajemniczenia? Na czym budować fundamenty? 1 Cytuj Link do komentarza Share on other sites More sharing options...
wn2001 Luty 15, 2021 Udostępnij Luty 15, 2021 6 godzin temu, Adder napisał: Na pewno zrobię sobie jeszcze radar z fajną wizualizacją. Czyli coś, jakby zdjęcie w jednym wymiarze. Ale takie rzeczy ktoś już pewnie wcześniej robił, więc nie jest to aż tak ekscytujące. Czy chodzi Koledze o coś takiego jak na filmie powyżej? Jeśli tak - faktycznie, sporo tego typu projektów 6 godzin temu, Adder napisał: Proszę podpowiedzcie koledzy co byście radzili. Jak wejść na kolejny level wtajemniczenia? Na czym budować fundamenty? To zależy, w którym kierunku chciałby się Kolega rozwijać? Processing? Jeśli tak, to może teraz jakaś gra typu pong, gdzie urządzenie wejściowym będą fizyczne potencjometry? 😉 1 Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 15, 2021 Autor tematu Udostępnij Luty 15, 2021 5 godzin temu, wn2001 napisał: Czy chodzi Koledze o coś takiego jak na filmie powyżej? Jeśli tak - faktycznie, sporo tego typu projektów No właśnie. O coś takiego mi chodzi. Jak widać nie jest to zbyt oryginalny pomysł 🙂 5 godzin temu, wn2001 napisał: To zależy, w którym kierunku chciałby się Kolega rozwijać? Processing? Jeśli tak, to może teraz jakaś gra typu pong, gdzie urządzenie wejściowym będą fizyczne potencjometry? 😉 Dobre! Podoba mi się! 🙂 🙂 🙂 Chyba pociągają mnie oryginalne projekty techniczne wymagające wysublimowanej grafiki. 1 Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Luty 15, 2021 Udostępnij Luty 15, 2021 5 minut temu, Adder napisał: Chyba pociągają mnie oryginalne projekty techniczne wymagające wysublimowanej grafiki. No to zostaw tego Processinga w spokoju i chwyć się za Pythona i pygame. 1 Cytuj Link do komentarza Share on other sites More sharing options...
Adder Luty 15, 2021 Autor tematu Udostępnij Luty 15, 2021 (edytowany) 7 minut temu, ethanak napisał: No to zostaw tego Processinga w spokoju i chwyć się za Pythona i pygame. Chyba czas na to ! 🙂 Myślę o takim artystyczno-technicznym projekcie serii zdjęć tego samego obiektu w różnych widmach. światło widzialne, ultradźwięki, fale wifi, UKF, podczerwone, X... To mogłoby mnie wciągnąć na długie miesiące... Edytowano Luty 15, 2021 przez Adder Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Dołącz do dyskusji, napisz odpowiedź!
Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!