blog.benshobbycorner.nl

Bascom-AVR nieuwjaarskaartLaser engraven

Posted by Ben Zijlstra Fri, December 04, 2015 15:48:46

Blog image

Nieuwjaarskaart van sleutelhangers3D Printer

Posted by Ben Zijlstra Fri, December 04, 2015 15:44:56

Blog image

Meter hoge Eifeltoren3D Printer

Posted by Ben Zijlstra Fri, December 04, 2015 15:09:40

Nog niet helemaal klaar, blauwe gedeelte daar wordt nog aan gewerkt...

Hier van Richard en Franz Achatz, RepRapUniverse.com alvast een sneak preview van een Eifeltoren in drie kleuren

Blog image1 meter hoog. Gemaakt met de 17-30 hotend op 5 verschillende 3d-printers.

G-code converterLaser engraven

Posted by Ben Zijlstra Fri, December 04, 2015 15:05:59

Hadden Theo Kleijn, Edwin van den Oetelaar en ondergetekende al eerder eens moeite gedaan om een programma te maken waarin een G-code file omgetoverd werd in een file die naar een laser engraver gestuurd kon worden, het één en ander is nu in een grafisch jasje gestoken. De eerdere oplossing bestond uit twee Python programma's, een converter en een zendprogramma, nu zijn beide programma's in één programma gestopt. In het grafische scherm een aantal mogelijkheden om default-waarden waaronder o.a. laser-snelheid aan te passen.

Blog image

Al eens eerder beschreven hoe een G-code file aan te maken. We gaan uit van een ontwerp in OpenScad en laten Cura een g-code file genereren. Eerder werd de hele layout in OpenScad gemaakt, later is echter makkelijker gevonden om losse elementen te gebruiken, en die pas in Cura samen te voegen tot één geheel.


In een eerste test is een DXF file gebruikt die is gedownload van www.dxf-downloads.de en in OpenScad is omgezet naar een STL-file, zelfde geldt voor alle woorden, dit zijn stuk voor stuk STL-files. In Cura het geheel samenstellen en één g-code file laten genereren. Zie onderste afbeelding.


Hierboven het beginscherm waarin diverse settings kunnen worden aangepast (laser snelheid, commando's voor laser aan / laser uit enz.).

Blog image

En hier het scherm dat zichtbaar wordt wanneer een geconverteerd G-code bestand naar de laser engraver wordt gestuurd. De laatste 8 commando's die naar de laser engraver zijn gestuurd zijn nog in beeld.

Een g-code file die door Cura wordt gegenereerd, bevat nog geen laser aan/uit commando's, de converter plaatst een laser uit (M05) commando in de G0 regels, en een laser aan (M03) commando in de G1 regels. Verder wordt de laser eenmalig op de juiste hoogte geplaatst. Afhankelijk van de hoogte van het te laseren object, in ieder geval met de laser in focus. Verder worden alle g-code commando's als M(achine), T(ools) en ; (commentaar) verwijderd.

Het programma is uitgetest op een laser engraver met daarop een Ramps 1.4 controller en op de Banggood laser engraver met een GRBL-controller. De Banggood laser engraver heeft geen display en geeft een foutmelding op de g-code M117 instructies (een statusbericht op het LCD display zetten). Hier rekening mee gehouden. Zowel Ramps 1.4 als de GRBL-controller maken gebruik van een softwarematige handshake, na elke verzonden regel komt er een ok terug, zodat de volgende regel verstuurd kan worden.

Programma in gecompileerde vorm uitgetest op Windows XP, Windows 7 en Windows 10. Geen problemen ondervonden.


Blog imageLaser engraver aan het werk...

Blog image

Laser engraver gereed.

Basic4AndroidDiversen

Posted by Ben Zijlstra Fri, December 04, 2015 14:59:29

Windows 10 draaiend en gelijk maar eens even Basic4Android opnieuw geïnstalleerd. Je hebt JAVA nodig en de Android SDK. Verder van Anywhere software B4A, http://www.b4x.com/ eerder bekend onder de naam Basic4Android.

Er is een versie voor iOS en er is ook een gratis versie voor Java. Verder zijn er trial versies van B4A (Android) en B4I (Apple iOS).


Blog image

Wat ik gemaakt heb is een applicatie om op een Nodemcu een relais aan en uit te zetten. De commando's daarvoor zijn:

http://192.168.0.69/gpio/0

http://192.168.0.69/gpio/1

Er komt vanuit de nodemcu een terugkoppeling in de vorm van een webpagina.

De tekst van deze terugkoppeling wordt in de WebView tekstbox gezet. Met het commando ToastMessageShow kan ik kleine status pop-up berichten laten zien. Op bovenstaande plaatje kun je zien dat de knop Relay on is ingedrukt en ook het bericht terug van de nodemcu.


Blog image

Hier kun je zien dat het relais op de nodemcu weer is uitgezet.

Blog imageHet ontwerpen van de layout van het scherm kun je live doen wanneer je wireless vanuit Basic4Android verbinding maakt met je smartphone. Dat kan via Bluetooth maar kan ook via Wifi. Je dient twee Apps te downloaden, de ene voor de koppeling is een B4A bridge, en de tweede is een B4A designer. De laatste is om de layout van het scherm te ontwerpen. Het ontwerp wordt gemaakt op de PC waarbij je allerlei schermelementen op het scherm plaatst en je kunt live meekijken op je smartphone. Labels, buttons, textboxen enz. enz. Wat dat betreft heeft het veel weg van Visual Basic 6.0

Blog image

Dit is het B4A bridge scherm. Zodra je deze app opstart wordt een IP-adres zichtbaar en vanuit Basic4Android op de PC kun je daarmee dan een verbinding maken.


Blog image

Zie hier de applicatie geïnstalleerd (rode cirkel). Je dient tijdelijk de beveiliging van de smartphone uit te schakelen, zodat ook van andere sources dan 'Google Play' programma's kunnen worden geïnstalleerd.

Blog imageHier de nodemcu met een ledje als relais. Om te testen.

Blog imageHet gebruikte icoontje voor de applicatie...
Wisclub - Chapter Tilburg...

Hier de sources van Basic4Android en van NodeMCU


Weerstation 2.0Bascom-AVR

Posted by Ben Zijlstra Fri, December 04, 2015 14:48:25

Uitgebreidere versie gemaakt van weerstation. Nu worden meer gegevens zichtbaar gemaakt op een ILI9327 display, 240x400 pixels op een Arduino Mega 2560 en natuurlijk geprogrammeerd met Bascom-AVR.

Blog imageEn toevallig was dit op de warmste dag van 2015.

Blog imageHier de rechtstreekse koppeling van de nodemcu aan de Arduino Mega 2560. Hier gaan we uit van een 'alles optimaal' situatie. Software en hardware zijn echter later aangepast. Dit stukje hardware is er tussen gezet om om de 8 minuten vanuit de Arduino Mega de nodemcu te resetten.

Blog image
En ook de software is aangepast. Een timer die om de 8 minuten de nodemcu een schop geeft. Verbinding tussen nodemcu en accesspoint wordt opnieuw opgebouwd en de weergegevens van www.forecast.io worden opnieuw opgehaald.

Zie hier de tekst die binnen komt en door de Arduino Mega op het display worden gezet.

Requesting URL: /rest/weather?apiKey=<here your API-key>&lat=51.50&lon=5.00&units=auto

HTTP/1.1 200 OKDate: Mon, 03 Aug 2015 13:49:37 GMT
Server: Apache/2.2.29 (FreeBSD) DAV/2 mod_ssl/2.2.29 OpenSSL/1.0.2c mod_hcgi/0.9.5
X-Powered-By: PHP/5.4.42
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html

11c

CURRENT_TEMP=32
CURRENT_HUMIDITY=41
CURRENT_ICON=clear-day
CURRENT_SUMMARY=Clear
MAX_TEMP_TODAY=32
MIN_TEMP_TODAY=15
ICON_TODAY=partly-cloudy-night
SUMMARY_TODAY=Partly cloudy overnight.
MAX_TEMP_TOMORROW=21
ICON_TOMORROW=rain
MIN_TEMP_TOMORROW=14
SUMMARY_TODAY=Rain until afternoon.

0

closing connection



WeerstationDiversen

Posted by Ben Zijlstra Tue, July 07, 2015 23:27:52

Een weerstation. Voor de lokale weersinformatie kun je je aanmelden bij https://developer/forecast.io en daar een account aanmaken. Je geeft tevens op van welke locatie je de weergegevens wilt hebben en krijgt daarna een API-key. Deze API-key kun je in je applicatie opgeven. De source is van Github, zoek op weatherstation 2.0 van Sioux.

Je mag als 'developer' gratis 1000 calls per dag uitvoeren. Kom je daar boven dan is het een kwestie van de portemonnee trekken.

Afwisselend komen de onderstaande gegevens op het scherm te staan, schuift ook heel mooi van rechts naar links.

Blog image


Blog image
Blog image
Blog image
Blog image


Nog even wat aanvullende informatie. De site met de weergegevens stuurt elke keer een lijstje met de volgende gegevens:

CURRENT_TEMP=20
CURRENT_HUMIDITY=63
CURRENT_ICON=rain
CURRENT_SUMMARY=Drizzle
MAX_TEMP_TODAY=26
MIN_TEMP_TODAY=15
ICON_TODAY=rain
SUMMARY_TODAY=Drizzle starting in the evening.
MAX_TEMP_TOMORROW=19
ICON_TOMORROW=rain
MIN_TEMP_TOMORROW=13
SUMMARY_TODAY=Breezy until afternoon and light rain throughout the day.

Door ergens twee remarks weg te halen worden deze gegevens ook naar de seriele poort gestuurd. Kan dus voor allerlei andere toepassingen gebruikt worden.



ColorpickerDiversen

Posted by Ben Zijlstra Sat, June 20, 2015 15:28:29

Geschreven voor een Arduino Mega met een ILI9325 grafisch display, een colorpicker. Dit voor het samenstellen van mooie kleurcombinaties voor toetsenbord, tekst in buttons, achtergrond e.d.

Het programma stuurt bij wijziging van kleurcombinaties de kleurcodes direct naar de Arduino en live zijn de diverse kleurencombinaties mee te kijken.

Op een ILI9325 bestaat het kleurregister uit 16 bits, 5 voor rood, 6 voor groen en 5 voor blauw.

Blog image
Blog image
Blog image
Blog image