Schlagwort-Archive: Hardware

Abgesetzter Temperatursensor mit micro:bit radio

Micro:bit ist zwar BLE tauglich, doch unter Python reichen die Ressorcen für den BLE-Stack nicht aus und es bleibt die micro:bit radio Verbindung.

Zur abgesetzten Temperaturmessung kann ein micro:bit als Sensorknoten und eine weiterer als Empfängerknoten genutzt werden. Die Message des Sensors wird hier als Broadcast versendet.

Das Python-Programm des Sensors ist:

# Measuring chip temperature on micro:bit & output to radio
from microbit import *
import radio

# The radio won't work unless it's switched on.
radio.on()

while True:
 temp = temperature() - 3 # offset to ambient temperature
 display.scroll(str(temp)+" C")
 radio.send(str(temp))
 sleep(5000)

Das Python-Programm des Empfängers ist:

# Receiving chip temperature from a micro:bit sensor node & output to console
from microbit import *
import os
import radio

uart.init()
uart.write(os.uname().machine +" get chip temperature by radio connection\r\n")

# The radio won't work unless it's switched on.
radio.on()

while True:
 # Read any incoming messages.
 temp = radio.receive()
 display.scroll(str(temp)+" C")
 uart.write("micro:bit chip temperature = "+str(temp)+" C\r\n")
 sleep(1000)

 

 

Advertisements

BBC Micro:bit

Micro:bit ist ein für Ausbildungszwecke entwickelter Mikrocontroller mit Features, die diesen Controller auch für Prototypen-Entwicklungen u.a. interessant machen. Hier sind die Retails zu diesem Controller zu finden.

Die technischen Spezifikationen sind:

  • Nordic Semiconductor nRF51822 Bluetooth Low Energy & 2.4GHz Wireless SoC (32-bit ARM® Cortex™ M0 CPU mit 256kB Flash und 16kB RAM)
  • Bluetooth Smart Antenne
  • microUSB Anschluss (Programmdownload, Console)
  • LiPo-Anschluss
  • 25 LEDs, 2 Taster
  • 20 Pin Edge Connector
  • Accelerometer, Compass

Programmierbar in

  • JavaScript-Blocks-Editor (PXT)
  • microPython

MicroPython Programmbeispiel

# Measuring chip temperature on micro:bit & output to console
from microbit import *
import os

uart.init()
uart.write(os.uname().machine +" measuring chip temperature\r\n")

while True:
 temp = temperature()
 display.scroll(str(temp)+" C")
 uart.write("micro:bit chip temperature = "+str(temp)+" C\r\n")
 sleep(5000)

 

 

C.H.I.P. als Sensor-Knoten

Wegen seiner Kompaktheit kann C.H.I.P.  dann sehr gut als Sensor-Knoten eingesetzt werden, wenn es nicht auf minimalen Stromverbrauch ankommt.

Für erste Tests habe ich mit dem Program chiplog.py  die CPU-Last, den verfügbaren Speicher und die Boardtemperatur abgefragt und über Thingspeak visualisiert. Ausserdem wird beim Überschreiten der Temperatur eine Push-Message versendet. Mit dem Programm stress habe ich die CPU-Last erhöht, um die Auswirkungen auf die Boardtemperatur zur verdeutlichen.

CPU_Load

Mem_avail

PMU_Temp

Um einen externen Sensor abfragen zu können, bedarf es nur noch weniger zusätzlicher Zeile Code, die für einen Temperatur- und Feuchtigkeitssensor SHT31 noch folgen.

Das Programm BatStatus.py zeigt den Status der Batterie in den ersten Minuten nach dem Anschliessen an den C.H.I.P.  Controller.

BatStatus

Die Programme chiplog.py und BatStatus.py sind auf Github abgelegt. Im Wiki sind Installationshinweise nach einem Flashen des Betriebssystems und dem erforderlichen Python-Setup aufgeführt.

 

Rapid Demonstrator Service: Per Klick zum Funktionsmuster

Nach dem im Januar erschienenen Beitrag zum Rapid Demonstrator Service von Phytec zeigt der in der ELEKTRONIK 5/2017 erschienene Beitrag die Umsetzung vom ersten Klick im Webformular bis hin zur Inbetriebnahme des fertigen Prototypen.

An jedem der drei Messetage der embedded world in Nürnberg verlost Phytec zwei Rapid Demonstrator Entwicklungen im Wert von bis zu 1600 €. In Halle 1 Stand 206 können Sie sich mit dem Rapid Demonstrator Service bekannt machen.

Die Daten zu meinem Beitrag (Designdaten, Scripts, Benchmarks) sind über goo.gl/pGcVPi zugänglich.

In 15 Tagen zum ersten Prototyp: Hardware-Entwicklung 4.0

Um realistisch abschätzen zu können, ob sich ein Produkt wie geplant realisieren lässt, ist nichts so aussagekräftig wie reale Hardware, auf der die Software getestet werden kann.
Mit dem Rapid Demonstrator Service sichert die Mainzer Phytec zu, schon nach 15 Arbeitstagen einen funktionsfähigen Prototyp zu liefern und gibt damit dem Entwickler ein Werkzeug in die Hand, welches die Evaluierung einer Produktidee bzw. den Aufbau eines Funktionsmusters oder Prototypen mit einem seriennahen Entwicklungsstand ermöglicht. Durch Einsatz eines solchen Design Tools wird es möglich, eine Entwicklung ohne Designbruch auf der Grundlage erprobter Hard- und Software-Komponenten vorzunehmen. Durch die Wiederverwendung erprobter Komponenten sinkt das Entwicklungsrisiko beträchtlich.

Nachdem in diesem, in der Zeitschrift Elektronik Heft 2/2017 veröffentlichten Beitrag der Entwicklungsprozess unter Verwendung des Rapid Demonstrator Service betrachtet wird, wird dieser Service in einer zweiten Folge von der Eingabe der gewünschten Funktionalität bis hin zur Inbetriebnahme des resultierenden Board untersucht werden.