node.js para embarcados
TRANSCRIPT
- 1. Node.jsNode.js para embarcadospara embarcados Alan HoffmeisterAlan Hoffmeister https://github.com/alanhoffhttps://github.com/alanhoff https://twitter.com/alan_hoffhttps://twitter.com/alan_hoff https://alanhoff.comhttps://alanhoff.com
- 2. 1.1. Sistema embarcado?Sistema embarcado? An embedded system is a computer systemAn embedded system is a computer system with a dedicated function within a largerwith a dedicated function within a larger mechanical or electrical system, often withmechanical or electrical system, often with real-timereal-time computing constraints.computing constraints.
- 3. 2.2. Caractersticas de um ESCaractersticas de um ES ** Eficincia energticaEficincia energtica ** Tamanho de cdigo reduzidoTamanho de cdigo reduzido ** Runtime simplificadoRuntime simplificado ** Peso reduzidoPeso reduzido ** Preo reduzidoPreo reduzido ** Interface de usurio dedicadaInterface de usurio dedicada
- 4. 3.3. Perifricos!Perifricos! ** Botes (teclado, controles..)Botes (teclado, controles..) ** Sensores, perifricosSensores, perifricos ** Tela, ledsTela, leds ** Motores, compassosMotores, compassos ** Wifi, bluetooth, rdioWifi, bluetooth, rdio
- 5. 4.4. Aplicaes VeculosAplicaes Veculos
- 6. 4.4. Aplicaes RobticaAplicaes Robtica
- 7. 4.4. Aplicaes Impressoras 3DAplicaes Impressoras 3D
- 8. 4.4. Aplicaes DronesAplicaes Drones
- 9. 4.4. Aplicaes IoTAplicaes IoT
- 10. 4.4. Aplicaes MedicinaAplicaes Medicina
- 11. 5.5. Para iniciar bastaPara iniciar basta ** Engenharia eletrnicaEngenharia eletrnica ** C/C++C/C++ ** JavaJava ** PythonPython ** LuaLua
- 12. 5.5. Consegui aprender tudoConsegui aprender tudo!!
- 13. 6.6. Single Board ComputersSingle Board Computers ** Placas mais robustasPlacas mais robustas ** Matem as caractersticas de um sistemaMatem as caractersticas de um sistema embarcadoembarcado ** Trs tudo junto: GPIO, proc., mem., net.,Trs tudo junto: GPIO, proc., mem., net., armazenamento...armazenamento... ** Um computador completoUm computador completo ** Um brinde arquitetura ARMUm brinde arquitetura ARM
- 14. 6.6. Single Board ComputersSingle Board Computers ** U$ 35 Raspberry PiU$ 35 Raspberry Pi ** U$ 30 BeagleboneU$ 30 Beaglebone ** U$ 70 CubieboardU$ 70 Cubieboard ** U$ 35 TesselU$ 35 Tessel ** U$ 50 Intel GalileoU$ 50 Intel Galileo ** Odroid, Banana Pi, Radxa...Odroid, Banana Pi, Radxa...
- 15. 7.7. Linux + ARM + Node.js = Linux + ARM + Node.js = ** LinuxLinux - Kernel- Kernel - Drivers- Drivers - Controle de Hardware- Controle de Hardware - Daemons- Daemons ** Node.jsNode.js - Scripting- Scripting - Cola entre lgica e OS- Cola entre lgica e OS
- 16. 8.8. Node.js em embarcadosNode.js em embarcados ** The goodThe good - Free as FREE BEER- Free as FREE BEER - Baixo consumo de energia- Baixo consumo de energia - Tempo de desenvolvimento- Tempo de desenvolvimento - Esquea compilao, JS!- Esquea compilao, JS! - Milhares de pacotes no NPM- Milhares de pacotes no NPM - Eventos e streams nativos- Eventos e streams nativos - I/O no bloqueante- I/O no bloqueante - Cross-compiling- Cross-compiling - Runtime leve e independente- Runtime leve e independente - Embedvel- Embedvel - Core rico em features- Core rico em features
- 17. 8.8. Node.js em embarcadosNode.js em embarcados ** The badThe bad - Ruim para CPU-bound tasks- Ruim para CPU-bound tasks - Debug assncrono- Debug assncrono - Poucos desenvolvedores- Poucos desenvolvedores ** The uglyThe ugly - Grandes poderes, grandes- Grandes poderes, grandes responsabilidadesresponsabilidades
- 18. 9.9. ExemplosExemplos
- 19. 10.10. npm install --savenpm install --save ** libmraalibmraa - Sanitiza e padroniza componentes- Sanitiza e padroniza componentes ** serialportserialport - Fale com seus sensores e perifricos!- Fale com seus sensores e perifricos! ** node-REDnode-RED - Ferramenta visual para integrar harware,- Ferramenta visual para integrar harware, APIs, servios onlineAPIs, servios online ** node-usbnode-usb - Fcil manuseio de portas USB- Fcil manuseio de portas USB ** electronelectron - Crie interfaces em HTML!- Crie interfaces em HTML!
- 20. 11.11. Auf wiedersehenAuf wiedersehen ** FontesFontes -- http://goo.gl/TIRgCjhttp://goo.gl/TIRgCj -- https://goo.gl/qycI25https://goo.gl/qycI25 -- https://goo.gl/i3KiVOhttps://goo.gl/i3KiVO -- https://goo.gl/r4jBvchttps://goo.gl/r4jBvc -- https://goo.gl/pMWFuhhttps://goo.gl/pMWFuh -- http://goo.gl/ua9pechttp://goo.gl/ua9pec