28/11/2016

Solderen

Filed under: — pinguim @ 10:22 am

Bij al die (open source hardware) microcontroller experimenteerbordjes moet je soms solderen als je project het breadboard verlaat.
Ik heb bij een soldeerbout gemerkt dat de stift van de soldeerbout zelf ook zowat kan wegbranden of wegsmelten bij (waarschijnlijk verkeerd) gebruik.
Ik noteer hier even (voor mezelf) wat ik zelf gevonden heb uit documentatie en online.

Nodig:
Soldeerbout, soldeerbouthouder (spiraalvormige houder waar de soldeerbout ingezet wordt als hij warm is), soldeerkussen (om overtollige soldeer af te vegen), en soldeer.

Gebruik, onderhoud:
– soldeerbout van 25 W is te weinig (temperatuur zakt te snel bij contact), 100 W is te veel (voor electronica).
– Het sponsje dat dikwijls bij de soldeerset zit, moet je vochtig maken.
– punt reinigen staat zeker 10 keer in mijn boekje, en ook alvorens hem uit te schakelen terug “vertinnen” na reiniging/gebruik.

Temperatuur:
In de gebruiksaanwijzing van mijn soldeerbout (instelbare 48W 150-450°), blijkt dat loodvrije soldeer iets hogere temperatuur nodig heeft.

  • Smeltpunt loodvrij: 220°
  • normale werking: 300-360°
  • productiedoeleinden (?): 360-410°

Als je loodhoudende moet (de-)solderen zou je dus al met lagere temperaturen toekomen, bv 270-320°.

Sailfish updates: 2.0.4 Fiskarsinjoki

Filed under: — cybrarian @ 1:54 am

Deze update is 240 Mb, en is op dit moment versie 2.0.4.14.
De naam is een Finse rivier van 25 km lang die langs een van de enige overgebleven houten stadjes komt.

De backup heeft wat kleine correcties, maar is verder wel belangrijk omdat hij de basis vormt voor toekomstige updates, waarin wel fundamentele wijzigingen zullen komen.
Er zouden meer verschillende geluiden mogelijk zijn, conferentiegesprekken, wetenschappelijke rekenmachine, enz., maar eigenlijk moet je updates in ieder geval doen voor het bijwerken van de veiligheid van het systeem.

Eerst backup maken natuurlijk:
– alle programma’s die het toelaten vanuit de backup tool in jolla/sailfish zelf; je kan per programma aan/af zetten alvorens de backup te starten.
– na backup kies je voor restore, kopieer naar SD card.
– haal de sd kaart uit je Jolla, en kopieer bv op je laptop of naar je desktop: het bestand backup met de datum van vandaag.
– met een gewone verbinding via de usb kabel kan je ook je foto’s backupen (kopieren naar pc).
– check manueel je andere data, bv teksten die niet in de jolla backup zitten.
– zorg voor stroomverbinding (lader of usb-pc) en internetverbinding (lokale wifi).
– Systeem, update: download.
Duurt ongeveer 10 minuutjes.

Dan: Update ready for installation. “Install”.
Toestel herstart, je ziet het Sailfish logo en een voortgangsbalk.
Nog eens tien minuutjes later start hij dan normaal op.

Systeem, updates: “up to date”.

7/11/2016

Arduino IDE, gebruik

Filed under: — cybrarian @ 11:46 am

(Zie ook Arduino IDE installatie, en Arduino (IDE) Hallo wereld)

Java
Arduino IDE is een java programma, en het heeft niet het gevoel van een gewoon programma op de Linux desktop. Je kan onverwachte problemen ondervinden als er iets mis is met de java omgeving waarin het draait. Maar het voordeel ervan is dat je gemakkelijk kan omschakelen tussen je Linux desktop en een Mac bv om aan een project (samen) te werken.

De bestanden bevinden zich bv (openSUSE) in :
/usr/share/arduino-1.0.6/
/usr/share/arduino-1.0.6/lib/
/usr/share/arduino-1.0.6/libraries/
/usr/share/arduino-1.0.6/hardware/
/usr/share/arduino-1.0.6/tools/
/usr/share/arduino-1.0.6/reference/
/usr/share/arduino-1.0.6/examples/

In lib zit het arduino_icon.ico, en version.txt met het versienr bv 1.0.6.
In referenc/img/ zit het logo.png logo

De reference/ map bevat een locale versie in html van de documentatie
file:///usr/share/arduino-1.0.6/reference/index.html

Een paar submappen verraden verschillende types en uitbreidingen:
/usr/share/arduino-1.0.6/hardware/arduino/cores/arduino
/usr/share/arduino-1.0.6/hardware/arduino/firmwares/wifishield

en
/usr/share/arduino-1.0.6/hardware/arduino/variants/(leonardo, mega, micro)
/usr/share/arduino-1.0.6/hardware/arduino/variants/(ethernet, robot-motor, robot-control)

Home
Je instellingen worden opgeslagen in de (verborgen) map .arduino in je home directory:
~/.arduino/preferences.txt
(voorbeeld aan het einde van dit artikel)

De Arduino map in je home directory, kan de eigen projectenbevatten, en die worden ook bereikbaar onder het menu Sketchbook, My Sketches.

Crash
De IDE (1.x) durft al eens ten onder gaan of zich onbetrouwbaar gedragen. Echt vervelend is dat het dikwijls gebeurt dat de IDE crasht bij het “uploaden” van een sketch naar de Arduino, zeker als je de sketch dan nog niet bewaard had. Of ik weet ook niet wat er gebeurt als je een document meer dan 1 keer opent.
Zo kan je eindigen met een programma dat gecompileerd in de Arduino zit, en waarvan je zelf de broncode kwijt bent omdat de omgeving crashte. De broncode terug downloaden van de Arduino naar je computer gaat niet. Die code wordt op je computer gecompileerd, en die uitvoerbare versie wordt aan de Arduino afgeleverd, niet de broncode.
Problemen voorkomen: Elke keer bewaren met een lichtjes ander versienummer.

Redding
Bij het compileren worden een heleboel bestand aangemaakt in een tijdelijke map, op Linux in /tmp.
Je kan daar gaan kijken naar mapjes met een naam als:

build7894629993842646725.tmp

Daarin kan je allerlei bestanden vinden die te maken hebben met het proces van broncode naar uitvoerbaar Arduino-programma. En de eerste stap bestaat uit de broncode van je project, die je vindt onder de extentie .cpp (C++), dus bv :
Webserver001.cpp
Die kan je naar je home directory kopiëren, en daar openen in write, Kate, of je broncode-editor.
Je zal merken dat er een lijn is bijgekomen bovenaan in de broncode, iets als;
#line 1 "Webserver001.ino"
en ik vond ook nog ergens iets als:
#line 8
Die kan je er gewoon uithalen.

Uitbreiden
Je kan extra bibliotheken bij-installeren, en extra apparaten aanmaken waaruit je kan kiezen bij de keuze van het “bord”.

Vervolg: de inhoud van het preferences bestand…
– – –
(meer…)

4/11/2016

Industruino Proto met Arduino-hart

Filed under: — cybrarian @ 3:38 pm

De Industruino
Een Belgisch(*) product, gebaseerd op Arduino: de Industruino. Een klein kastje, de grootte van een thermostaat of zo, met Arduino processorbord, en schroef-aansluitingen voor de in- en uitgangen. Te programmeren in de gewone Arduino IDE (met extra Arduino/Industruino bibliotheken), en te monteren op een standaard DIN-rail in een electriciteitskast.
Je hebt een voeding nodig van 12 of 24 volt (kan met een rail-gemonteerde voeding ernaast).

* Leek zo vanwege Europese verdeling vanuit België en Belgische vlag bij support-antwoorden; ondertussen is duidelijk dat de Belg vanuit China werkt.

Arduino + scherm
Zonder geknoei maak je gemakkelijk een echte toepassing met een scherm en een paar knoppen. Het is ook ongelooflijk handig om een scherm te hebben op een bord waarvan de functie nog verandert tijdens het gebruik.

Versies
Er zijn twee versies:

  • Proto: met prototype bord onder het brein, om zelf enkele componenten op te solderen.
  • Ind I/O: voor zwaardere in- en uitgangen op niveau van PCL-sturingen in de industrie (24V).

Van ieder toestel bestaat een versie met meer geheugen (andere processor).
Er is een bijhorende uitbreidingsmodule die een netwerkaansluiting en een mini-sd-kaartlezer biedt.

Gebruik en installatie
– Je moet de delen samenbouwen: het “top board” bevat behalve het scherm ook en vooral de processor, en heeft de aansluiting voor de kleine usb-stekker.
– Eerst de Arduino programmeeromgeving installeren (versie 1.0.6 of 1.6.x).
– Uitbreidingen installeren voor Industruino scherm, en naargelang de versie van de hardware ook daarvoor hardware uitbreidingen en bibiotheken.
– zie uitgebreider onderaan: terminologie, installatie-log.

Conclusie
De industruino “Proto” is enorm handig om prototypes te maken, maar ook om onmiddellijk een toepassing te bouwen. Je kan de grote lijnen van een idee uitwerken op een breadboard met je gewone Arduino/Genuino (of compatibelen), en met industruino heb je een kant en klare behuizing.


Terminologie en numerologie
UC1701 : library for Industruino LCD functionality
INDIO.h : librarry voor Industruino IND.I/O Baseboard (Arduino IDE versions 1.6.+); nodig voor groene schroefaansluitingen;
Wire.h : library voor I2C (expander op Indio)
EthernetIndustruino: voor Ethernet module (gebased op de standaard Arduino Ethernet library).
SPI.h : , SPI library; Ethernet module is verbonden over SPI (dus #include SPI.h)
FRAM : ..

Installatie topboard, scherm en ethernet uitbreiding
Industruino installeren, doel:
– de werking testen met een voorbeeldprogramma, bv met de knipperende led sketch.
– je eigen programma inladen.

1. Uitbreiden van de (Arduino IDE) softwareomgeving met het industruino bord

– Voor de gewone Industruino Proto (top board Atmega32u4) is dat voldoende omdat die werkt als een Arduino Leonardo, maar je moet wel de bibliotheken voor het scherm toevoegen.

– Voor de Industruino Proto “1286 MCU variant” (meer geheugen en top board AT90USB1286) moet je bijkomende uitbreidingen installeren om ermee te kunnen werken, werkt op dit moment (begin 2017) niet met de huidige versie van de Arduino IDE 1.6.13.

Uitleg op https://industruino.com/page/techcentre
met link naar support file package: Industruino_support_file_package_1.6.zip
van https://static.industruino.com
Uitpakken maakt een struktuur van mapjes met bestanden, met telkens een “readme”:

Please copy the “Industruino” folder into your Arduino IDE “Hardware” folder;

Folder location on Mac: Applications/Arduino.app/Contents/Resources/Java/Hardware
Folder location on Windows: C:\\Program Files (x86)\\Arduino\\Hardware\

After you restart the Arduino IDE please select “Industruino 1286” from the “Tools->Board” menu. You are now ready to upload code to your Industruino.

Niets voor Linux gebruikers?
– het werkt als je in de Arduino directory een map “hardware” maakt, en daar de “Industruino” map in kopieert uit de uitgepakte map “1286 Board definition”.
– met de meest up-to-date versie van de Arduino programmeeromgeving heb je wel een probleem, die is op dit moment nog niet ondersteund, waardoor je bij het compileren van je programma een foutmelding krijgt. Tot 1.6.5 zou ok zijn, in OpenSUSE/42.2 zit ik momenteel aan 1.6.13.

2. Uitbreiden van de bibliotheken met de LCD bibliotheek
– https://github.com/Industruino/libraries
– eenvoudige module (minder geheugengebruik): een aangepaste UC1701.
(je kan een download doen van de libraries/master, daar zit alles in)
De voorbeelden uit de directory Libraries naar Arduino/libraries
Daarin komen de mapjes: EthernetIndustruino, Indio, UC1701

3. Uitbreiden van de bibliotheek met de ethernet bibliotheek
– https://github.com/Industruino/libraries (je kan een download doen van de libraries/master, daar zit alles in)
– “EthernetIndustruino”

Na stappen 2 en 3 zijn die zichtbaar in de programmeeromgeving;

Menu “Sketch, bibliotheek importeren, industruino”

Geeft:

#include
#include < dns .h >
#include < ethernetclient .h >
#include < ethernetindustruino .h >
#include < ethernetserver .h >
#include < ethernetudp .h >
#include < twitter .h >
#include < util .h >

en bij de voorbeeldbestanden te laden via:
“Bestand, voorbeelden, EthernetIndustruino”

“Bestand, Sketchbook, libraries, EthernetIndustruino”

IDE
De IDE crasht regelmatig, maar hij is snel terug op te starten (gebeurt meestal bij het uploaden van de code naar industruino). Soms ben ik ook de seriële poort kwijt (enkel nog dev/ttyS0 ipv ook dev/ttyACM0 die ik moet selecteren voor de industruino) en moet ik de IDE herstarten of de USB-kabel opnieuw verbinden.

Powered by WordPress