Archivi categoria: ARM

Unità Didattiche con Laboratorio di Tecnologia e Scienza.

Laboratorio di Informatica
Revisione 0.02

UNIX Linux
il Sistema Operativo liberamente utilizzabile, immune da virus ed estremamente robusto

  1. Linux Kernel
  2. Distribuzioni Linux
    1. Debian
    2. Red Hat
    3. Ubuntu
    4. Suse
  3. il computer per tutti
      1. LibreOffice
      2. Chrome e Firefox
      3. Oracle VirtualBox
      4. Gimp
      5. Programmi Multimediali
    1. immune da virus
    2. Open Source
    3. iniziativa Revisione Computer Dismessi
      1. recupero parco macchine obsoleto mediante allestimento Linux
      2. iniziativa che permette di utilizzare vecchie macchine
        1. a costo zero
        2. e contribuendo alla diminuzione del conferimento di inquinanti

RaspberryPi
il computer completo, di dimensioni e costo  minimi

  1. un computer completo per la didattica dell’informatica
    1. computer ARM 32 e 64 bit
    2. Debian compilato ARM Rpi: Raspbian
    3. lo standard Python nella programmazione
  2. Catalogo dei Progetti Didatti Internazionali
  3. Istituti Scolastici con Gruppi di Interesse attivi
  4. Il Network Globale degli Appassionati e Gruppi di Interesse
  5. MagPi
    1. traduzione
  6. Allestimento di un Raspberry Pi Multimediale
    1. Ascolto Musica, Radio Internet, Netflix
  7. la comunicazione tra Raspberry Pi ed altri dispositvi
    1. rete
    2. WiFi
      1. RaspberryPi zero
    3. seriale
    4. USB
  8. il controllo da Raspberry Pi di Arduino attraverso porte USB
    1. Qt app
  9. Raspberry Pi GPIO
    1. Raspbian modulo kernel
      1. utilizzo da terminae
      2. Python sorgente

Arduino
il computer miniaturizzato che interagisce con il mondo esterno

  1. laboratorio di didattica dell’informatica di base
  2. esperienze concrete di utilizzo
  3. Attuatori
  4. Sensori
  5. Principali tipi di schede
  6. Come alimentare le schede Arduino
  7. Porte I/O
    1. standard 5V e 3.3V
    2. I/O
      1. PWM
    3. AD
    4. DA
    5. seriale
    6. SPI
    7. I2C
  8. La programmazione di Arduino
    1. come programmare Arduino
      1. IDE e connessione USB
      2. configurazione
      3. Terminale Seriale
      4. Controllo remoto attraverso cavo USB
    2. Programmi Elementari
    3. allestimento ed utilizzo di un computer per programmare Arduino
    4. prime esperienze
      1. Accensione di un LED Colorato
      2. Accensione di due LED Colorati Intermittenti
      3. Il Semaforo
  9. La comunicazione mediante porte USB
    1. creazione di un linguaggio specifico per comunicare con Arduino
    2. UNIX Linux
      1. porta USB
        1. identificativi di produttore, modello e seriale
      2. udev
      3. P&P
      4. connessione
        1. questio reset alla connessione e, per certe schede, anche alla sconnessione
      5. firmware standard per controllo da dispositivo, per esempio computer o Raspberry Pi, attraverso USB
      6. Qt Poll App
        1. protocollo di comunicazione
        2. wrapper verso RDBMS
          1. PostgreSQL
      7. CEnni a codice Python
  10. Internet delle Cose
  11. interazione con un computer
    1. Raspberry Pi, Arduino, Sensori ed Attuatori
  12. esperienze introduttive
  13. esperienze con Opto Elettronica ed Illuminotecnica
  14. esperienze elementari con la Musica
    1. esperienze in ambito tessile: il vestito con equipaggiamento tecnologico
  15. Progetti Tecnologi
  16. Progetti Artistici
  17. Nozioni di Elettronica di Base

 

 

Informatica

  1. introduzione alla programmazione delle macchine calcolatrici
    1. UNIX Linux
      1. elementi di programmazione in
        1. C e C++
        2. Python
    2. Programmazione WEB
      1. elementi di Yii2, Crud
    3. RDBMS
      1. PostgreSQL, pgSQL, PL Python3 Untrusted
  2. Sistemi Operativi
    1. per processori Intel 32 bit, Intel ed AMD 64 bit, ARM 32 bit ed ARM 64 bit
  3. Il computer per uso domestico
  4. Il computer in ambito Aziendale
    1. Il server
  5. Sicurezza e prevenzione
  6. Monitoraggio
  7. Principi di Networking
    1. la rete domestica
    2. WiFi
    3. la rete Aziendale
      1. sistemi UTM e sicurezza aziendale
  8. Questioni Forensi

Internet of Things ed elettronica

  1. Processori
  2. Controller
  3. Sensori
  4. Attuatori
  5. Protocolli
  6. Linguaggi
  7. Standard I.o.T.

Scienza

  1. Introduzione alla Matematica
    1. il numero in natura
    2. matematica antica
      1. gli Elementi di Euclide
      2. l’eredità del mondo Greco Antico
        1. osservare lontano perchè non si capisce il vicino
        2. dall’astronomia alla geometria
        3. il pensiero geometrico che aumenta la complessità nel tramandare la cultura matematica
        4. notazioni per numeri che inibiscono il pensiero algebrico
      3. la nascita del sistema posizionale decimale
        1. algoritmi di calcolo moderni
      4. il Mondo Arabo nel Medio Evo
      5. Fibonacci
      6. il pensiero algebrico
        1. nozione moderna di insieme con struttura
        2. insiemi con operazioni
        3. algoritmo di calcolo
        4. notazione dei numeri diversa dalle lettere per l’alfabeto
        5. calcolo letterale: lettere al posto di un dato numero, lettere al posto di incognite
        6. nozione di equazione
      7. Newton e la nascita della scienza moderna
        1. la differenza nello spazio geometrico  omogeno; la materia
        2. corrispondenza biunivoca tra numeri e realtà: il metodo delle coordinate
      8. definire numeri con approssimazioni
      9. denso e continuo
      10. Felix Klein e i Programmi di Erlangen
        1. nuova classificazione delle discipline scientifiche sui gruppi di trasformazioni
      11. Geometria Proiettiva nell’Ottocento
      12. Scienza Razionale: il metodo assiomatico
    3. Insiemi Numerici
      1. Naturali, Interi, Razionali, Reali e Complessi
      2. insieme ed operazioni
        1. il Teorema Fondamentale dell’Algebra per sancire l’esistenza di al più due tipi di operazione: additivo e moltiplicativo
    4. Linguaggio degli insiemi
    5. Corrispondenze tra Insiemi
    6. Fondamenti Di Matematica
    7. La visione della Matematica dopo Felix Klein
      1. La nuova concezione dello Spazio Geometrico
    8. Storia della Matematica
      1. Storia dei numeri
      2. Storia del Pensiero Geometrico
      3. Storia del Pensiero Algebrico
      4. La Matematica nel Mondo Greco Antico
        1. Il pensiero Geometrico che compromette lo sviluppo Algebrico e la Didattica
    9. Matematica Antica
    10. Matematica Moderna
    11. Metodo Assiomatico
    12. Algebra sul Concetto di Insieme ed Invarianza
  2. Fisica di base
    1. Lo Spazio della Fisica sullo Spazio Geometrico
    2. Materia
    3. Il metodo delle Coordinate
    4. la nozione di Misura
    5. Sistemi Inerziali
    6. Newton e La nascita della Scienza Moderna
      1. i Principi di Newton

 

DART-SD410 CPU: Qualcomm Snapdragon 410

Starting from $57
Consuming only 4 mA in suspend with a 3.7V Li-Po

The DART-SD410 is based on the Qualcomm Snapdragon 410 (APQ8016), 1.2 GHz quad core Cortex-A53™ processor.

CPU
CPU Name Qualcomm SD 410 (APQ8016)
CPU Type Cortex™-A53
CPU Cores x4
CPU Clock (Max) 1.2 GHz
Memory
RAM 1024 – 2048 MB LPDDR3
eMMC 8 – 16 GB
Multimedia
2D/3D Graphics Acceleration Adreno 306 Accelerated 2D and 3D
Video Encode / Decode 1080p30 H.264 Encode / Decode
Camera Interfaces 2x CSI
Display
HDMI On-Carrier (via bridge)
LVDS On-Carrier (via bridge)
DSI 1080p30
Networking
Ethernet 10/100/1000 Mbps Ethernet – On-Carrier (via bridge)
Wi-Fi 802.11 b/g/n
Bluetooth 4.1 EDR + BLE
Audio
Headphone driver Yes
Microphone Digital, Analog
Line In/Out Speaker
Connectivity
SD / MMC x1
USB Host / Device x1 OTG
UART x2, up to 4 Mbps
I2C x6
SPI x6
RTC On carrier
OS Support
Linux Yocto, Ubuntu
Android Yes
Windows 10 IoT Yes
Mechanical Specifications
Dimensions (W x L x H) 25 mm x 42.63 mm x 4.7 mm
Electronic Specifications
Supply voltage 3.7 – 4.5 V
Digital I/O voltage 1.8 V
Environmental Specifications
Extended temperature (-20 to 85°C) Yes

Raspberry Pi 3 Model B

The Raspberry Pi 3 is the third generation Raspberry Pi. It replaced the Raspberry Pi 2 Model B in February 2016. Compared to the Raspberry Pi 2 it has:

Processor Broadcom BCM2387 chipset, 1.2GHz Quad-Core ARM Cortex-A53.802.11 b/g/n Wireless LAN and Bluetooth 4.1 (Bluetooth Classic and LE)
GPU Dual Core VideoCore IV® Multimedia Co-Processor. Provides Open GL ES 2.0, hardware-accelerated OpenVG, and 1080p30 H.264 high-profile decode. Capable of 1Gpixel/s, 1.5Gtexel/s or 24GFLOPs with texture filtering and DMA infrastructure
Memory 1GB LPDDR2
Operating System Boots from Micro SD card, running a version of the Linux operating system or Windows 10 IoT
Dimensions 85 x 56 x 17mm
Power Micro USB socket 5V1, 2.5A

The Raspberry Pi 3 has an identical form factor to the previous Pi 2 (and Pi 1 Model B+) and has complete compatibility with Raspberry Pi 1 and 2.

Raspberry Pi Raspberry Pi 3 Model B Computer Board with ARM Cortex-A53

N.d.r. La scheda è una 64 bit ARM A 53.

 

Raspberry PI ed Arduino

L’articolo propone i due prodotti in coppia.

pi_plus_arduino

Precisiamo che i due prodotti non sono confrontabili soprattutto perchè Raspberry PI rimane un prototipo mentre Arduino, nel suo contesto, è un prodotto usabile in contesti professionali.

Nel nostro progetto LABijk infatti citiamo il microserver e non RPI.

RPI non è usabile in ambiti produttivi sostanzialmente per l’instabilità del file system a causa della memoria di massa disponibile. Comunque è un computer vero e proprio che può essere dotato del miglior repertorio software disponibile.

Allo stato attuale questo è il più grande limite delle schede ARM. Ma a breve saranno disponibili le nuove generazioni di schede che cambieranno radicalmente i termini della questione.

Arduino non è un computer nel senso usuale del termine, ha il più basso costo, consuma pochissimo, non scalda e regge a qualsiasi imprevisto. l’interfaccia di rete è realmente modesta e costosa. Nell’ambito PLC o microcontrollori per usi professionali è imbattibile.

 

 

The MagRPI

The MagRPI è la rivista ufficiale di RaspberryPI, eccellente modello di pubblicazione ed aggregazione.

Issue 17

E’ una rivista che si legge volentieri e con un suo spessore sostanziale, senza scivolare nel  versante pesante della comunicazione per marketing. La versione PDF è gratuita.

Gli aspetti community e commerciale sono in rapporto equilibrato. I contenuti innovativi emergono in modo naturale.

La rivista è in linea con il progetto Raspberry PI, che è ha avuto il primato di essere la prima scheda – computer ARM completa a circa 35 $, ed ora mantiene il primato di aggregazione positiva sul fenomeno epocale ARM.  Purtroppo alcuni limiti rendono difficile l’utilizzo di questa scheda in ambiti di grande responsabilità.  Se il progetto saprà evolvere, per esempio, ad un A53 con SATA e IO standard Arduino entro i primi due trimestri del prossimo anno, allora potrà conquistare il suo secondo primato.

 

Arduino Yún

Arduino Yun, grazie a Michele per la segnalazione, è un nuovo prodotto che potrebbe essere molto interessente nel progetto LABijk.

Infatti integra tre microntroller con schede di rete e wireless al prezzo di circa 50 €.

In pratica sono due computer: il tradizionale Arduino con il  bus IO che lo caratterizza ed un Atheros AR9331 a 400MHz con Linux Linino direttamente mutuato dal grande progetto DD-WRT, ovvero distribuzione Linux per sostituire il firmware dei più diffusi router con un sistema operativo Linux.

DD-WRT è un progetto fondamentale che permette di migliorare nettamente la conoscenza sui router che usualmente si utilizzano. Infatti questi dispositivi non vengono più visti come indipendenti dalla realtà usuale, ma come computer con un loro os, in genere proprietario,  che può essere sostituito con Linux.  Questo nuovo punto di vista permette, tra i molti aspetti,  di comparare dispositivi diversi.

L’integrazione con LABijk è in termini di nodi connessi al padre con ethernet. Infatti Arduino è molto debole sotto il profilo dello shield ethernet. Yun coniuga l’ottimo Arduino tradizionale con l’elettronica tipica di un brillante router moderno e un sistema operativo innovativo per router.

L’effetto è di poter costruire nodi con rete, wireless ed micro compact flash concorrenti e con le usuali caratteristiche, nel senso che la scheda di rete vista attraverso la libreria Arduiono è piuttosto debole, ma una cCPU da router con dd-wrt invece realizza un dispositivo eccellente. ARM board potrebbero competere: maggior potenza allo stesso prezzo, ma

  • dimensioni non da frutto d’impianto elettrico
  • instabilità date dalla SD
  • carenza di un bus IO fortemente diffuso verso l’elettronica come quello di Arduino
  • riscaldamenti inopportuni quali quelli di RPI in certe condizioni d’esercizio

sono punti a favore di Yun.

 

Perchè Arduino SMD ai livelli “ij” nel progetto LABijk

Il progetto LABijk è ambizioso, ma fattibile. Le applicazioni nel mondo elettrico e non solo,  per esempio nel condizionamento di ambienti, sono molteplici.

Il livello i è costituito dai microcontroller direttamente connessi al microserver.

Le connessioni previste sono USB od ethernet.

Una ARM board sarebbe nettamente migliore, ma

  • scalda un po’ e se chiusa in una piccola scatola di policarbonato ci possono essere grandi problemi
  • i costi che, escluso il caso ethernet, vede Arduino vincente; Raspberry PI sarebbe vincente, ma il filesystem su micro SD lo rende fragile; quindi le board ARM candidabili andrebbero sopra i 60€ a pezzo contro i 20€ circa di Uno SMD
  • nel caso di collegamento USB è da preferirsi, per ora, Arduino UNO SMD per i costi e per la robustezza già testata in pooling su USB; in tecnologia SMD per lo stato dell’arte
  • nel caso di ethernet è meglio un ARM non solo per i costi che diventano equivalenti, ma per la gestione ethernet molto debole su Arduino: poche connessioni e senza threading/forking controllabile
  • in futuro è prevedibile, si veda Arduino Due, la convergenza ad ARM

Mel caso di livello j allora non vi è dubbio che l’Arduino SMD sia l’unica soluzione:

  • 12 MHz garantiscono che non scalda anche se inscatolato
  • è robustissimo, prodotto su tiratura mondiale in enormi quantità
  • è Elettronica Aperta
  • la comunità da sviluppatori ad adepti è enorme
  • la documentazione, raggiungibile via internet, è la più vasta in assoluto
  • si apre perfettamente ad ogni elettronica, si pensi che al tempo dell’esplosione di Fukushima entro pochi giorni erano già pronti shield Arduino per contatori Geiger anche reperibili dal mercato giapponese
  • è perfetto per un centro stella seriale RS485
  • permette l’utilizzo dei shield Groove creando uno standard imponente verso l’elettronica e l’elettricità, basti pensare che non serve più il saldatore, ci si muove con plug e senza crimpare
  • il costo, sui venti euro, lo rendono imbattibile
  • ultimo ma non ultimo il progetto è italiano e viene venduto in grandi numeri  anche in Germania, Stati Uniti, Cina e Giappone.

A20-OLinuXino ARM DUAL CORE, DUAL GPU ALLWINNER A20 CORTEX-A7

La A20-OLinuXino è forse la miglior scheda/computer ora in commercio, infatti il prezzo è sui 50 €, è dotata dell’ottimo processore Allwinner A20 doppio core a 1GHz, 1GB DDR3 e 4GB di flash, ma soprattutto è munita di un canale SATA.

Se non fosse per la scheda di rete a 100MBit e per i doverosi test di robustezza con una distribuzione di derivazione Linaro, potrebbe rientrare nella classe microserver.

FEATURES

  • A20 Cortex-A7 dual-core ARM Cortex-A7 CPU and dual-core Mali 400 GPU
  • 1GB DDR3 RAM memory
  • 4GB NAND FLASH memory
  • Android already loaded on the NAND
  • SATA connector with 5V SATA power jack
  • Built-in FullHD support (1080p)
  • 2 x USB High-speed host with power control and current limiter
  • USB-OTG with power control and current limiter
  • HDMI output with ESD protectors
  • VGA output on 6-pin 1.25mm (0.05″) step connector
  • 100MBit native Ethernet
  • Battery connector with battery-charging capabilities
  • Audio headphones output
  • Microphone input on connector
  • 2 x UEXT connectors
  • LCD connector compatible with with 4.3″, 7.0″, 10.1″ LCD modules from Olimex
  • 160 GPIOs on three GPIO connectors
  • MicroSD card connector
  • SD/MMC card connector
  • DEBUG-UART connector for console debug with USB-SERIAL-CABLE-F
  • GPIO LED
  • Battery charge status LED
  • Power LED
  • 2KB EEPROM for MAC address storage and more
  • 10 BUTTONS with ANDROID functionality + RESET button
  • 4 mount holes
  • 6-16V input power supply, noise immune design
  • PCB dimensions: (5600 x 3250) mils ~ (142.24 x 82.55) mm

pcDuino scheda ARM con compatibilità Arduino

PcDuino è una scheda ARM Cortex A8 con 1GB RAM, 2GB Flash e circa 10W di consumo massimo.

Permette l’esecuzione di Ubuntu 12.10 o Android e propone il bus Arduino in simulazione, permettendo quindi di utilizzare forse gran parte delle schede elettroniche nello standard Arduino esistenti nel mercato.

Il prezzo è nettamente superiore della RaspBerry PI, che però non permette di utilizzare l’elettronica Arduino.

Comunque entrambi sono troppo deboli e con criticità nello storage, per esempio non gestiscono un canale SATA e caricano il file system su una microSD, da non entrare nel mondo dei microserver.

Dimensions: 125mm X 52mm

Features:

  • 1GHz ARM Cortex A8 CPU
  • GPU: OpenGL ES2.0, OpenVG 1.1 Mali 400 core
  • 1GB DRAM
  • Onboard Storage: 2GB Flash, microSD card (TF) slot for up to 32GB
  • Arduino-Style Peripheral Headers (Adapter Needed for Shield Form-Factor)
  • HDMI Video Output
  • Linux3.0 + Ubuntu12.10 Supported
  • 0.1″ Spaced GPIO Headers
  • RJ45 Ethernet Connection
  • Power Requirements: 2A @ 5VDC
  • API to access the following interfaces: UART, ADC,PWM,GPIO, I2C

BeagleBoard.org compie il suo quinto compleanno.

Alejandro Erives, brand manager per il processore Sitara alla Texas Instruments, celebra il quinto compleanno di BeagleBone.org, una scheda Open Source Hardware che compete con Raspberry PI, che comunque mantiene la miglior posizione.

Come riportato in BeagleBoard.org:

BeagleBone Black

A true open hardware, community-supported embedded computer for developers and hobbyists. Ride the 1GHz edge with the Sitara™ ARM® Cortex-A8 processor, boot Linux in under 10 seconds and get started on development in less than 5 minutes with just a single USB cable.

Key Features:

  • 1GHz performance
  • Run Ubuntu & Android
  • uHDMI, uSD, USB,       Ethernet, 5V
  • Built-in 2GB storage        with Ångström

 

I sistemi in-vehicle infotainment (IVI) adottano Linux

Cadillac XTS e Lexus IS, adottano Linux per i sistemi di intrattenimendo e di aiuto alla guida.

GM adotta un “fully” capacitive touchscreen nell’equipaggiamento originale dell’auto. Tra i processori si annoverano triplo core ARM 11. Il sistema di intrattenimento e di comunicazione dello stato dell’auto permette perfino di tracciare grafici sui consumi, velocità e distanza, oltre che il controllo di dispositivi per la sicurezza e della navigazione.

2014 Cadillac XTS CUE IVI system

Progetto automazione LABijk

Il progetto è ambizioso, fattibile e di qualità.

Estrapoliamo alcuni punti che rendano un certo profilo:

  • l’utilizzo di un microserver, a livello di root, con CPU tipo AMD E350 (a bassi consumi, da sostituire, nel 2014, con ARM A53 o 57), un vero disco fisso, meglio RAID 1,  e sistema operativo Linux fascia server, che permetta di realizzare comunicazioni professionali verso internet, dispositivi mobili …
  • microserver con un vero RDBMS relazionale di fascia alta che contenga ogni informazione coinvolta, anche storica; stiamo valutando gli ottimi MariaDB oppure PostgreSQL
  • microserver con infrastruttura software interamente sviluppata in C, compreso le applicazioni fastCGI per Apache e le app per i dispositivi mobili; quindi la pesante filiera HTML5 viene scalzata per intero, riducendo le richieste di potenze di processo anche di un ordine, aumentando enormemente l’affidabilità, acquistando velocità anche con CPU ridotte
  • le tratte microserver – microprocessori livello i, sono realizzate collegamenti USB od ethernet, con comandi a stringa e, nel caso ethernet, in stile telnet; quindi connessioni veloci, molto collaudate, tradizionali ed estremamente affidabili
  • i microcontroller a livello i sono Arduino, ma potranno diventare schede ARM quando il consumo sarà così ridotto da non surriscaldare uno spazio angusto sigillato; oppure se è richiesta una maggior potenza di calcolo con un Linux Embedded
  • la tratta i – j viene realizzata con la solidissima RS 485
  • i microprocessori di livello j sono Arduino quindi solidissimi, economi, a consumo minimo (alcuni watt) con lo shield Grove fantastico e, non trascurabile, frutto di menti capaci italiane
  • le connessioni j – k sono preferibilmente Grove ovvero fantastiche per la semplicità di cablaggio
  • la matrice (i,j,k) permette di individuare ogni elemento in relazione agli altri e quindi, se microcontroller Arduino, di fissare le caretteristiche in  modo automatico nel firmware
  • e molto altro

CalAmp LMU-5000 LTE router ad altro

Interessante  router con CPU ARM e Linux Embedded promosso dalla AT&T.

Come riportato nell’articolo:

“LMU-5000 include:

  • Processor — 400MHz ARM9
  • Memory — 64MB RAM (133MHz); 128MB flash
  • Cellular:
    • SIM slot
    • SMA main, SMA diversity
    • LTE — 700/800/900/2100/2600 MHz, up to 100Mbps down, 50Mbps up; HSPA/CDMA fallback
    • HSPA — Tri-Band 850/1900/2100 MHz with diversity, up to 7.2Mbps down, 5.76Mbps up; fallback to HSDPA/UMTS/EDGE/GPRS
    • EVDO — Rev A Dual-Band 800/1900 MHz with diversity, up to 3.1Mbps down, up to 1.8Mbps up; fallback to CDMA
  • GPS:Networking — 10/100 Ethernet
    • SMA (with tamper monitoring, 3.0v)
    • 50-channel with SBAS, DGPS
    • 2.0 meter CEP accuracy (with SBAS)
    • -162dBm tracking, -147dBm acquisition sensitivity
    • AGPS capable
  • Other I/O:Security protocols — VPN (SSL v2, TLS v1), SSH server, SCP, SFTP
    • USB host
    • Mini-USB device
    • RS232 (DB-9)
    • 5-pin Molex for switched power TTL serial port
    • 4-pin Molex for power, ignition, I/O
    • 22-pin Molex for I/O:
      • 7x digital in
      • 5x digital out (relay driver)
      • 2x digital out (low-current LED)
      • 2x 1-wire interface
      • Voltage A/D in; status LEDs
  • Other features — 3-axis accelerometer; GPS/cellular antennas; tie-wrap or adhesive plus screw mounting
  • Power — 7-32 VDC; power sleep modes; consumption 15mA (sleep), 170mA (with GPS on), 2A (peak transmitting)
  • Operating temperature — -30 to 70° C
  • Shock/vibration — Milspec 202G and 810G, SAE J1455
  • Dimensions — 5.2 x 2.7 x 1.2 inches (131 x 67 x 29mm)
  • Weight — 5.4 oz (153 g)
  • Operating system — Linux 3.x”

Home Automation con Arduino Raspberry PI ed altro

Segnaliiamo il suggestivo articolo   per l’utilizzo di un router con Linux Embedded con  CPU Cortex-A8 Allwinner A10 ad 1GHz, dotata di  1GB di DDR2 RAM e 2GB su SD.

I punti deboli sono l’assenza di storage, la fragilità del sistema operativo in SD, la mancaza di un vero e proprio archivio RDBMS, un framework molto articolato per un ARM A8, l’ottimo, ma produce una filiera forse lunga per l’Allwinner, Node.js per le app verso palmari …

 

 

 

Linaro: distribuzione Linux per ARM

Linaro è la distribuzione Linux esclusivamente per ARM.

Al progetto Linaro lavorano 120 ingegneri di tutto il mondo. Consolidano ed ottimizzano software opensource per l’architettura ARM, inclusi il compilatore GCC, Linux kernel, ARM power managment, interfaccie grafiche e multimediali.

E’ nata affiancando Ubuntu 12.04. Usa la stessa numerazione, ma con pubblicazioni mensili. L’attuale versione è Linaro 13.05.

I progetti Qt ed Ubuntu utilizzano ampiamente Linaro, anzi spesso compaiono repositories Ubuntu/Linaro.

Si osservi la grande attività in corso per la realizzazione della versione 64 bit, vero evento per l’inizio del nuovo anno, evento che portrerà al cambio integrale del parco macchine, ma anche dei mercati con lo spostamento quasi certo del baricentro verso il polo India/Cina, con il mercato Indiano più maturo di quello cinese, ma con numeri da apocalisse.

L’articolazione è, ovviamente, molto ampia per il gran numero di diapositivi portatili esistenti nel mercato.

 

Progetto automazione LABijk. Revisione 1.

Il progetto intende promuovere tecnologie open source ed open electronics.

Si supponga di voler gestire sensori ed attuatori.

Poniamo al centro un microserver, con sistema operativo Linux Server, eventualmente connesso ad internet ed a reti locali.

Questa macchina archivia un resoconto di tutto quello che viene fatto e comunica con tablet, telefoni ed altri sistemi anche attraverso internet. Abbiamo già dato alcune indicazioni sulle possibili scelte in articoli precedenti.

Distinguiamo tre livelli, per l’appunto i, j e k di aggregazione dispositivi.

Alla radice poniamo il microserver.

I primi nodi, di livello i, siano microcontroller Arduino SMD Uno o Ethernet, connessi al microserver via USB o ethernet. Le schede Arduino siano dotate  dispositivi adattatori seriali RS485.

Il secondo livello, detto j,  è costituito da dispositivi Arduino SMD UNO con shield Grove e connessi al padre mediante seriale.

Al terzo livello, detto k, poniamo attuatori e sensori connessi ai padre mediante cavi Grove, oppure cavi multipolari a 4 capi, schermati o non, telefonici o di rete. Lo standard Grove può essere convertito da adattatori nel formato RJ13 per cavi telefonici o RJ45 per usuali cavi ethernet.

Ogni dispositivo è individuato da coordinate i.0.0 oppure i.j.0 oppure i.j.k

I comandi sono del tipo i.j.k:<comando:valore,…> 

Il microserver è dotato di servizio che interroga costantemente in pool i dispositivi di livello i, mediante USB. Un secondo servizio che è simile al precedente ma per i dispostivi connessi mediante rete.

I dispostivi Arduino di coordinate i sono in ascolto verso il microserver, quindi USB o socket, ed anche interrogano il pool dei figli connessi mediante seriale.

I dispositvi di livello j sono in ascolto verso i dispositivi padri ed eseguono l’interrogazione in pool dei sensori, o meglio le entrate,  oppure cambiano lo stato delle uscite.

Nel microserver esiste un database “automazione” con le tabelle

  • “comandi”, contenente record corrispondente a comandi da eseguire
  • “stati” che contiene lo stato attuale di ogni dispositivo
  • “cambio_stati” che contiene cambiamenti di stati eventualmente da elaborare
  • “pianificazioni” che contiene operazioni pianificate

Il microserver esegue un servizio che interroga  in pool i dispositivi di livello i e riporta comandi e cambiamenti di stato nelle tabelle corrispondenti.

Un secondo servizio legge i cambiamenti di stato, consulta le tabelle di correlazione e scrive i comandi da eseguire nella tabella comandi.

Un terzo legge la tabella comandi e instrada il comando nel ramo corretto.

Tutto è riportato in tabelle e viene a costituire in sistema three-tier architecture, con pilastri di appoggio quali PostgreSQL, Apache, OpenSSH, Postfix, …

Precisiamo che

  • i cambiamenti di stato sono riportati nella tabella “cambio_stati”
  • i comandi con destinazione di coordinate valide sono instradati verso i destinatari
  • le risposte ritornano al microserver che chiude il comando ed aggiunge eventuali cambio stati.

Consideriamo un semplice esempio.

Supponiamo di avere un sistema di dimensione 5.3.5 ovvero al microserver sono connessi 5 dispositivi con il ruolo di HUB RS485, ad ognuno di questi sono connessi al più 3 dispositivi di livello j con HUB Grove, ad ognuno di questi al più 5 sensori o attuatori.

I dispositivi di livello j sono dotati di firmware che permette di sapere e gestire perfettamente i sensori od attuatori ad essi connessi. Inoltre questi dispositivi sono in pool rispetto i sensori ed attuatori.

Consideriamo il dispositivo di livello j di coordinate 3.2.

Supponiamo che abbia 2 attuatori ed un sensore di coordinate 3.2.3.

Il sensore sia un interrutore bistabile (entrata a due stati).

Ora se l’interrutore viene azionato e cambia stato, il dispositvo 3.2.0 costruisce il cambio stato 3.2.3:on (ma meglio introdurre la notazione definitiva  3.2.1:1 ) ed instrada il cambio stato al padre, il quale lo riporta al microserver che lo scrive nella tabella cambio stato.

Il servizio predisposto, nel microserver, rielabora secondo tabelle di correlazione il cambio stato, che viene elaborato, ovvero chiuso e crea gli opportuni comandi.

Mel nostro esempio il comando è 3.2.1:on  ma meglio  3.2.1:1

Quindi il servizio legge il comando e lo instada al dispositivo 3.0.0 che lo gira a 3.2.0

A questo punto il dispositivo 3.2.0 elabora il comando alzando il livello all’uscita corrispondente.

 

Il progetto infine prevede la creazione di una GUI  che gestisce le tabelle nel RDBMS del microserver.

La GUI permette di descrivere l’intero impianto mediante griglie di correlazione.

Quindi il programma prevede l’opzione di creare al volo ed in modo completamente automatico il firmware per ogni Arduino ed aggiornarlo via USB.

Perciò ogni Arduino deve venire correttamente etichettato mediante le coordinate i.j.k e connesso mediante USB al computer con la GUI di gestione per il travaso del firmware. L’operazione precedente deve essere rifatta nel caso che cambino i figli.

 

Il progetto si conclude con la realizzazione di App per Ubuntu Phone e Tablet, Android e iPhone di gestione ordinaria. L’obiettivo più ambizioso vorrebbe creare piante dei sistemi SVG e sovrapporre dei widgets dinamici visuali che rendano visuale il comportamento del sistema.

L’applicazione più importante sarà il controllo del CED quindi di una stanza con molti server. L’obiettivo è di controllare la linea di rete, le temperature, i tasti di accensione, reset di ogni server strategico. Le App mostreranno visualmente lo stato di ogni server e permetteranno operazioni quali spegnimento ed accesione “fisica”. Verranno gestiti i tempi di sostegno degli UPS e lo stato dei gateway verso l’esterno.

ARM considerazioni a giugno del 2013

Siamo a giugno e le schede con A8, A9 e A10 hanno raggiunto il loro apice.

Allwinner A10 riassume per tutti: Cortex A8 e Mali400 GPU, 32 bit, 1GHz, 1 core, SATA, schede sui 50$.

Le A15 (classe 32 bit, da 2 a 4 core, da1.5 a 2GHz) fanno il loro capolino: ARNDALE (ARM Samsung Exynos 5) con il prezzo da vera primizia, ARMBRIX (ARM Samsung Exynos 5) con la prematura fine.

Ma, fuori gara, compare un A15 Exynos 5 Dual 1.7GHz completo di batteria da oltre 6 ore, disco allo stato solido, LCD eccellente 11.6″ non touch, a partire da 250$.

Questa macchina nasce con Google Chrome, sistema operativo basato su Linux, è in commercio e si chiama Samsung Chrome Book. La classe di appartenenza è costituita dai netbook.

Ekoore: innovativa azienda italiana che allestisce tablet

Segnaliamo l’azienda italiana  Ekoore, che allestisce tablet, e non solo, con Linux e realizza il boot da sistemi operativi diversi: Linux, Android e Windows 8.

L’azienda compare nelle recensioni internazionali di riviste on line quale PCWorld.

Concludiamo con il curioso prodotto Elija S2, della fascia autoradio Android, che prevede l’interfaccia ODB2 direttamente verso il bus CAN dell’automobile, ovvero usando applicazioni come Torque si possono leggere direttamente i dati della centralina dell’automobile in uso.

 

Progetto ARM

Come già anticipato in altri articoli, l’anno corrente ed il prossimo vedranno un vero cambiamento tecnologico che potremmo dire di portata storica.

Le avvisaglie sono già comparse per esempio con il progetto Raspberry PI.

Presentiamo il Progetto ARM esplicitamente per seguire questo cambiamento epocale.

In breve possiamo dire che l’attuale parco computer sta per diventare completamente obsoleto e per essere sostituito da macchine piccole, a basso consumo, potenti, a basso costo e senza problemi di riscaldamento od usura di batterie.

Questo è permesso, per esempio, dai nuovi processori che rispetto ai parametri appena elencati, permettono una differenza anche dell’ordine.

Tra le famiglie dei nuovi processori forse la principale è quella del consorzio ARM.

All’inizio del 2014 compariranno i processori ARM A53 e A57 a 64 bit, che porteranno al totale superamento delle tecnologie oggi in uso. AMD sta convertendo l’attuale produzione di CPU i386 ed amd64 in ARM64. SI pensi che perfino l’Opteron, CPU per server, sarà ARM64.

Il nuovo ambiente vedrà l’utilizzo conveniente e massiccio di Linux e strumenti Open Source.

Anche in Italia esiste una innovativa realtà industriale che, sembra, costruirà CPU ARM.

Le conseguenze saranno innumerevoli, ma forse di portata quasi bilblica, infatti quanti cittadini dell’India possono permettersi di acquistare un telefono da 500$ ?

Ma quanti acquisteranno un computer vero e proprio della nuova generazione per 50$ ?

La risposta è, in stime fatte da aziende quali Samsung ed Asus, sull’ordine di centinaia di milioni di pezzi (da zero!).

Ma non finirà con i cittadini dell’India, si pensi a quelli della Cina.

Si potrà dire che si apriranno nuovi mercati vastissimi per l’alta tecnologia.

Linux e l’open source rischiano di essere il fulcro del cambiamento.