ARM Laptopproject deel 3a: De elektronica (1/2)

Door C.Hariri op vrijdag 24 augustus 2012 01:28 - Reacties (15)
Categorie: -, Views: 12.188

http://i.imgur.com/UvMyW.png
Het huidige deel is redelijk technisch van aard. Mensen die slechts interesse hebben in de overige zaken kunnen dus dit artikel overslaan.

Ik zal structureel te werk gaan. Als eerst zal ik om aan de eis van 16 uur batterijduur te kunnen voldoen een uitsplitsing geven van het energieverbruik. Indien mogelijk wordt er een referentiewaarde uit een tweede literatuur bij vermeldt. Door de energiedichtheid per 18650 cel te berekenen kan het aantal bepaald worden. Vervolgens worden alle randvoorzieningen uitgelicht. Als laatst wordt een opsomming gegeven van dingen die voor verbetering vatbaar zijn.

In het tweede deel worden de uiteindelijke circuits besproken.

http://i.imgur.com/25xFN.png
Ik defineer het “systeem” als de set van de volgende onderdelen: moederbord, USB Wireless Adapter, hardeschijf, scherm. Deze hebben het volgende verbruik:

NaamIdle(W)Load(W)Bron en referentie
Moederbord1,95http://dev.odroid.com/projects/odroid-xq/#s-2.8
USB Wireless adapter0,253http://dev.odroid.com/projects/odroid-xq/#s-2.8 en "Power Consumption Breakdown on a Modern Laptop"
Hardeschijf0,400,80http://www.tomshardware.c...chmark,review-32446-8.htm
Scherm1,53,5http://dev.odroid.com/projects/odroid-xq/#s-2.8 en "Power Consumption Breakdown on a Modern Laptop". Datasheet B140XW01

Het minimale energieverbruik is dus 4,1W. Om aan de eis van 16 uur te voldoen hebben we dus een batterij nodig met een capaciteit van 65,6Wh.

http://i.imgur.com/1Ydmd.png
Een 18650 is een type batterij, netzoals AA. De diameter is 18,65mm en de maximale spanning is 4,2V. Bij het ontladen zal deze afnemen tot een bepaalde waarde voordat deze omlaag stort. Voor grafiekjes verwijs ik naar: http://lygte-info.dk/revi...n18650CurvesAll%20UK.html.

Het stuk waar het voltage omlaag schiet is een gebied waar we het liefst uitblijven omdat diepe ontlading (<3V) voor lithium-ion cellen erg schadelijk is. We kiezen voor een veilig minimum: 3,4V. Er wordt uitgegaan van de volgende tabel: http://lygte-info.dk/revi...mon18650Summary%20UK.html, onder het kopje “Discharge, capacity down to 3.4 volt”. We gaan uit van een discharge-rate van 0.2A, waarom dit zo is zal later blijken in de uitleg over het laadcircuit. Te zien is dat we op een minimum van 1,75Ah kunnen rekenen. Door het oppervlak onder de curve te bepalen kunnen we het gemiddelde voltage berekenen. Dit blijkt 3,77V te zijn. Per cel rekenen we dus op 6,6Wh.

We hebben dus maximaal 49,6Wh/6,6Wh = 7,5 batterijen nodig. We ronden af naar boven zodat we op 8 cellen uitkomen.

http://i.imgur.com/FwQBb.png
http://i.imgur.com/9UQYT.png
Zonnecel
Omdat het verwachte idle-verbruik slechts 4,1W leek het mij mogelijk om zonnecellen te gebruiken om de laptop te laten draaien. Wat ook wel handig leek is om de laptop enkele uren in de zon te kunnen leggen, als er geen stopcontact in de buurt is (bijv. op vakantie). Omdat er hiervoor minimaal een voltage nodig is van 9V, en er per zonnecel 0,5V geleverd wordt moet er gebruik worden gemaakt van een DC-DC boost circuit. (het is niet mogelijk 18 cellen te monteren op de laptop). Ik zou hier graag de mening van medetweakers over willen hebben. Verwacht wordt dat er 4 cellen op de bovenkant van de laptop kunnen. In serie zou er dus een maximale spanning van 2V opgewekt kunnen worden. We hebben dus een kleine 5A nodig zouden we de laptop op zonne-energie willen draaien, en 9A willen we de laptop daadwerkelijk opladen (zie beschrijving Li-Ion charger).

Power-path
Er zijn twee Power-path IC’s in het circuit opgenomen. Er is uitsluitend gekozen voor Linear omdat er gebruik wordt gemaakt van LTSpice om het circuit te simuleren. Beide Power-paths prefereren de 19V adapterlijn. In het geval de adapter (plots) wordt ontkoppelt zal er naadloos worden overgeschakeld op een alternatieve bron.

Li-ion charger
Het belangrijkste onderdeel van dit circuit is de lithium-lader. De batterij bestaat uit twee parallelle rijen van vier in serie aangesloten 18650 cellen. Aangezien er per cel met 4,2V geladen moet worden, is de totale laadspanning 16,8V. De aanname dat er met maximaal 0,2A ontladen wordt per cel komt voort uit dat we in idle 3,1W verbruiken. Dit zou op een minimale cellading (3,4V per cel dus de gehele batterij 13,6V) neerkomen op 0,11A per cel. De batterijen zijn van nature niet beschermt, we zullen de bescherming handmatig in het circuit verwerken (hierover later meer). De LT3652 heeft een Powertracking feature waardoor het wattage onttrokken uit de spanningsbron wordt gemaximaliseerd (U*I). Deze functie is vereist voor het gebruik van zonne-energie. De maximale laadstroom is 2A. Er wordt gebruik gemaakt van 1,4A , dus 0,7A per cel uit veiligheidsoverwegingen.

NaamMaximale verbruik(W)
Moederbord e.d.15
USB devices10
Sub-totaal 25
Li-ion lader24
Op 70% efficientie+30
Totaal 70


DC/DC Step down
De laptop heeft twee spanningen nodig: voor het USB en moederbord 5 volt en voor het scherm 9V.

Charge indicator
Er wordt een condensator opgeladen met een constante spanning. Er wordt bepaald hoelang het duurt eer deze een bepaalde waarde heeft overschreden. Zodra deze waarde is overschreden ontstaat er een hoog signaal (dmv een comparator). Ik heb ik dit geval slechts twee GPIO poorten nodig (eentje voor de puls, de andere om het hoge signaal op te vangen). Wellicht is een analoog naar digitaal converter beter (nauwkeuriger)?

http://i.imgur.com/zWuFj.png
Er zijn enkele functies die we moeten implementeren om het laden en ontladen van de Li-ion batterijen op een veilige manier te laten verlopen. De volgende problemen kunnen voorkomen:

-Te hoge laadspanning
De 16,8V die door de lader op de cellen wordt gezet wordt verdeelt aangezien deze een interne weerstand hebben (principe van een spanningsdeler). Het lijkt me echter zo dat er in de praktijk deze interne weerstanden verschillen en kunnen veranderen (door het slijten van de cellen), waardoor er op een willekeurige cel mogelijk een hogere spanning kan staan. In dit geval moet het laden stop worden gezet. De spanning zal per cel moeten worden bepaalt. Hoe dit op een efficiŽnte manier kan (x8) staat op dit moment nog open.

-Over-ontlading
Gelijksoortig is het probleem dat geen van de cellen onder de 3,3V mogen raken. Indien 3,3V wordt bereikt op een willekeurige cel zal de hele batterij worden ontkoppelt van het systeem. Hoe dit op een efficiŽnte manier kan (x8) staat op dit moment nog open.

-Kortsluiting
Indien er meer dan het maximale gewaardeerde vermogen van het apparaat (25W, dus ongeveer 2A) wordt ontrokken aan de batterij moeten het worden ontkoppelt van het systeem en de rest van het apparaat. Dit kan door middel van een zekering.

-Te hoge temperatuur
Indien er een bepaalde temperatuur overschreden wordt (+85C) moet zowel het laden als ontladen stoppen. De temperatuur kan worden bepaald met een NTC.

http://i.imgur.com/yUAvD.png
In dit artikel is de infrastructuur achter het systeem uitgelicht. De volgende punten kunnen echter nog beter:
-de haalbaarheid van het gebruik van zonnecellen
-het bepalen van de spanning over de cellen met een hogere nauwkeurigheid/frequentie
-bepalen van spanning over elke individuele cel zonder teveel overhead

Graag ontvang ik hierover wat feedback.

Update: Het volgende deel is online: ARM Laptopproject: ARM Laptopproject deel 3b: De elektronica (2/2)

ARM Laptopproject deel 2: Vergelijking van beschikbare hardware

Door C.Hariri op maandag 20 augustus 2012 12:59 - Reacties (9)
Categorie: -, Views: 6.624

http://i.imgur.com/R0bCk.png
Rekening moet worden gehouden met het feit dat ARM borden niet 'mainstream' zijn. De keuze is erg beperkt en vaak is er geen direct alternatief. Ik heb een opsomming gemaakt van de borden die aan de eisen voldoen die opgesteld zijn in deel 1. Borden als de Raspberry Pi, Beagleboard, VIA APC en dergelijke zijn niet in de vergelijking meegenomen.

Een korte opsomming van de minimale eisen (zie deel 1 voor de details):
CPU: dual-core @ 1GHz
RAM: 1GB
Een VGA aansluiting kan handig zijn aangezien menig beamer hier nog gebruik van maakt. Elk bord heeft HDMI en USB, dus deze zijn uit de vergelijking weggelaten.

Een extra eis is een maximale hoogte van 2cm. Dit omdat anders de uiteindelijke laptop te hoog wordt.

http://i.imgur.com/GvPdI.png
NaamCPURAMVGASATALVDSPrijs
iWaveSystems Q7iMX6 Quad1GB, uitbreidbaarYYY>$1000

Details: alles is in principe aanwezig, en zoniet, dan is het uitbreidbaar. Er kleven echter enkele grote nadelen aan. Uitbreidbaar is alleen een optie bij een bestelling van meer dan 1000 borden. De prijs voor een "sample" bord is enkele duizenden euro’s, voor een bedrijf makkelijk betaalbaar maar voor een particulier not done. Verder is het bord te hoog.
Bron: http://www.iwavesystems.com/?q=node/239

NaamCPURAMVGASATALVDSPrijs
BoundaryDevices N6xiMX6 Quad1GBNYY*$299

Details: de prijs van $299 zou over enkele maanden omlaag gaan omdat er op dit moment een groot tekort is aan de SoC’s. Helaas is het zo dat ondanks dit bord LVDS ondersteunt, er slechts een 20 pins aansluiting aanwezig is. Deze staat alleen panelen toe van tabletformaat waardoor dit bord ongeschikt is.
Bron: http://boundarydevices.co...d-imx6-arm-cortex-a9-sbc/

NaamCPURAMVGASATALVDSPrijs
Kontron KTT30Tegra 3 T30*2GBNY - MiniNOnbekend

Details: de Tegra 3 is snelle chip. Echter is deze in dit geval omlaag geklokt naar 0,9Ghz per core. Waarschijnlijk omdat anders het energiebudget overschreden zou worden. Verder werd mij verteld dat er een 2GB versie zou worden gemaakt. De prijs konden ze me nog niet vertellen. Er is geen LVDS aanwezig, dus er zou een omweg gemaakt moeten (hdmi naar lvds circuit) worden om het paneel erop aan te sluiten. Verder is het bord pas over enkele maanden beschikbaar. Het bord is groot, maar de hoogte valt wel mee.
Bron: http://emea.kontron.com/p...therboards/ktt30mitx.html

NaamCPURAMVGASATALVDSPrijs
Seco T30Tegra 3 T302GBN*YY+-$500

Details: de officiŽle prijs zou naderhand nog worden bekend gemaakt, maar ik kreeg te horen dat deze rond de $500 inclusief carrier bord zou zijn. Prijzig, maar nog betaalbaar. Het probleem met deze setup is dat een goed carrierbord, met alle aansluitingen en een acceptabele hoogte, slechts in grote getale beschikbaar is. Wellicht verandert dat in de toekomst; het bord is pas over enkele maanden beschikbaar.
Bron: http://www.seco.com/en/item/quadmo747-x_t30/

NaamCPURAMVGASATALVDSPrijs
Pandaboard 1OMAP 44301GBNNN$174

Details: het Pandaboard is wellicht het meest bekende alle genoemde borden. Het is de enige dual-core in deze lijst, en er is geen LVDS aanwezig. Ook ontbreekt er een SATA poort, maar dit hoeft geen problemen op te leveren (zie Odroid-X).
Bron: https://en.wikipedia.org/wiki/PandaBoard

NaamCPURAMVGASATALVDSPrijs
Odroid-XExynos 44121GBNNY$129

Details: het bord heeft dezelfde SoC als de S3 en Note 10.1. De kloksnelheid is 1,4GHz, minimaal 40% sneller dan elke concurrent in deze vergelijking. Het bord komt gezien de aansluitmogelijkheden het dichtst bij het Pandaboard. Ook hier is geen SATA aanwezig: er moet geboot worden van een SD- of eMMCkaart.
Door slechts de bootloader vanaf SD in te laden kan deze rest van het OS vanaf een SSD draaien. We zijn dan wel gelimiteerd door de doorvoersnelheid van USB2.0. De snelheid hiervan bleek na enkele tests acceptabel te zijn. Een Samsung 830 128GB kan over USB2.0 ongeveer 2000iops uitvoeren: marginaal t.o.v. SATA maar wel vele malen beter dan een conventionele hardeschijf. De overdrachtsnelheid is echter wel beperkt. Verder is het bord leverbaar op korte termijn.
Bron: http://www.hardkernel.com...11/products/prdt_info.php

http://i.imgur.com/yUAvD.png
VerworpenReden
BD N6XGeen 14" LVDS support
Kontron KTT30Geen LVDS, Seco Q7 T30 is een beter alternatief
PandaboardGeen LVDS, Odroid-X is een beter alternatief
iWave iMX6Prijs, hoogte van bord


OvergeblevenNadeel
Seco Q7 T30(prijs), hoogte met beschikbaar carrierbord, wachttijd
Odroid-XGeen SATA, 1GB RAM


Uiteindelijke keuze: de keuze is op de Odroid-X gevallen. De twee grootste nadelen, namelijk dat het geen SATA en slechts 1GB RAM heeft zijn geen kritieke nadelen. Zoals eerder vermeldt levert een SSD over USB2 acceptabele performance. Het besturingssysteem kan geoptimaliseerd worden zodat voor het OS minder dan 40MB RAM nodig is (zie SlitaZ). Soortgelijke optimalisaties zijn mogelijk voor de rest van de software.

http://i.imgur.com/zhqCD.png
Deel 3: Elektronica
Deel 4: Uiterlijk & Totale geschatte kosten
Deel 5: Software en OS
Deel 6: Nawoord

ARM Laptopproject deel 1: Voorwoord en hardware-eisen

Door C.Hariri op zondag 19 augustus 2012 23:17 - Reacties (20)
Categorie: -, Views: 7.606

http://i.imgur.com/UvMyW.png
Doordat hardware tegenwoordig relatief zo goedkoop is hebben de meeste huis-tuin-en-keuken computers een exces aan verwerkingskracht. Door gebruik te maken van efficiŽnte software kunnen kleinere en zuinigere hardware geschikt gemaakt worden voor de gemiddelde taken. Het doel van dit project is een laptop van maximaal 1,5kg met een accuduur van minimaal 16 uur. De meeste plannen voor dit systeem liggen al klaar. Ik zal ze in dit blog uitwerken en er toelichting op geven hoe bepaalde keuzes tot stand zijn gekomen. Feedback van medetweakers wordt uiteraard op prijs gesteld.

Disclaimer: aangezien dit geen wetenschappelijk artikel is heb ik de vrijheid genomen om mij niet te houden aan allerlei conventies en methoden. Genoemde waardes en conclusies zijn dan ook in het beste geval een goede schatting en dus niet geldig in wetenschappelijke context.

http://i.imgur.com/KpvBQ.png
CPU: De Raspberry Pi is mijn referentiepunt voor een zuinig ARM systeem. Met behulp van Htop is een gemiddelde load-average gemeten bij de taken waarvoor het uiteindelijke systeem gebruikt zal gaan worden. Gemiddeld genomen was deze bij het opstarten van software rond en om 3 tot 4. Dit houdt in dat indien de CPU van de Raspberry Pi 3 tot 4 keer sneller zou zijn, we nog net een CPU-load zouden hebben van 100%. Dit gegeven zullen we verder gebruiken als minimale eis waaraan onze hardware zal moeten voldoen.

Als referentie kunnen we waardes verkregen met een benchmark genaamd “nbench” nemen. nbench test de singlecoreperformance van het geheugen-, integer- en floating-pointoperaties. Deze worden weergeven als een index ten opzichte van een AMD K6 233 Mhz. Met behulp van waardes verkregen met nbench kan een goede vergelijking worden gemaakt.
Raspberry Pi:
MEMORY INDEX : 2.539
INTEGER INDEX : 3.121
FLOATING-POINT INDEX: 1.960

Bron: http://www.raspberrypi.or...iewtopic.php?f=63&t=12579
IMX53:
MEMORY INDEX : 6.436
INTEGER INDEX : 6.409
FLOATING-POINT INDEX: 1.661

Pandaboard:
MEMORY INDEX : 6.523
INTEGER INDEX : 6.188
FLOATING-POINT INDEX: 6.815

Bron: http://www.powerdeveloper.org/forums/viewtopic.php?p=14832
We zien dus dat een moderne ARM processor op 1Ghz per core 2 tot 3 keer sneller is dan de CPU van de Raspberry Pi. Om aan de minimale eis van 3-4x sneller te kunnen voldoen is dus een dual-core nodig.

Om een vergelijking te kunnen trekken met x86 hardware kan de volgende tabel worden gebruikt: http://www.tux.org/~mayer/linux/results2.html. Verder heeft Phoronix het Pandaboard gebenchmarkt tegen de Pentium-M en Atom van Intel. http://www.phoronix.com/s...&item=pandaboard_es&num=1

RAM: Het volgende probleem is de grootte van het RAM. Onder normale omstandigheden gebruikt een kaal OS onder de 100MB. Per programma schat ik het gemiddelde verbruik op maximaal 100MB. 1GB is normaliter dus voldoende. In uiterste gevallen kan het echter voorkomen dat een programma, vaak Firefox met veel tabs open, deze grens overschrijdt. 2GB zou dus beter zijn.

Hardeschijf: Over de hardeschijf kunnen we kort zijn: een mechanische is niet zuinig genoeg en te fragiel. "Power Consumption Breakdown on a Modern Laptop" door Aqeel Mahesri en Vibhore Vardhan spreekt over een verbruik van tussen 0.6W en 2.3W.

Scherm: Ik heb de indruk dat 14" of 14.1" een goede maat is voor de laptop die in gedachte heb. Drie resoluties die hierop gangrijk zijn: 1600x900, 1440x900 en 1366x768. Hiervan vervalt de eerste aangezien ik deze schermverhouding onbruikbaar acht om goed te kunnen werken op een laptop van dit formaat. Van de overige twee resoluties ligt het voor de hand om 1440x900 te nemen omdat dit de hoogste resolutie is.

http://i.imgur.com/zhqCD.png
Deel 2: Vergelijking van beschikbare hardware
Deel 3: Elektronica
Deel 4: Uiterlijk & Totale geschatte kosten
Deel 5: Software en OS
Deel 6: Nawoord