Image    Planeta

24 març 2019 - 00:10
Entenem que el pdf ńo està protegit i que treballem amb Linux.

Primer treiem el text i les imatges del pdf

1. Text
pdftotext arxiu.pdf arxiu.txt

També podem seleccionar tot el text o copiar-ho amb Ctrl-C i enganxar-ho amb Contrl-V

2. Imatges
pdfimages -f 1 -l 999 -png arxiu.pdf prefix
  -f        : first page to convert
  -l        : last page to convert

3. Per fer una presentació podem fer un Impress enganxant el text a Esquema, el separem en diapositives i afegim les imatges O utilitzar Tiddlywiki

El desem

4. Opcionalment l'importem a google slides
24 març 2019 - 00:09
Prova de XBee Shield i Bluetooth
Material per al receptor

Placa Arduino
XBee Shield
Mòdul XBee Bluetooth
Material per a l'emissor
Mòbil Android
Aplicació que envii codis ASCII per Bluetooth (1)

Observacions
En lloc del mòdul XBee serveix un mòdul bluetooth HC-05, HC-06 o HC-07 estàndard. Només l'hem de connectar com s'indica al codi.

Muntatge
Receptor
Munteu les tres plaques.
Col•loqueu l'interruptor del shield en posició USB per poder programar, o be treieu el shield abans de programar i torneu-lo a col·locar desprès.
Carregueu aquest codi:

Codi per Arduino
// Control per BT d'una sortida
// https://maker.pro/arduino/tutorial/bluetooth-basics-how-to-control-led-using-smartphone-arduino
// Connexio
// RX (Pin 0) —> TX
// TX (Pin 1) —> RX
// 5V —> VCC
// GND —> GND

char dades = '0'; // Variable per desar les dades rebudes
char ON = '1'; // Ordre per encendre el LED
char OFF = '0'; // Ordre per apagar el LED
int LED = 13; // Pin Arduino amb el LED que es controla

void setup() {
   Serial.begin(9600); //Sets the data rate in bits per second (baud) for serial data transmission
   pinMode(LED, OUTPUT); //Sets digital pin 13 as output pin
}

void loop() {
   if(Serial.available() > 0) // Send data only when you receive data:
{
   dades = Serial.read(); //Read the incoming data and store it into variable data
   Serial.print(dades); //Print Value inside data in Serial monitor
   Serial.print("\n"); //New line
   if(dades == ON) //Checks whether value of data is equal to ON
      digitalWrite(LED, HIGH); //If value is ON then LED turns ON
   else if(dades == OFF) //Checks whether value of data is equal to OFF
      digitalWrite(LED, LOW); //If value is OFF then LED turns OFF
   }
}
Font del codi Arduino: https://maker.pro/arduino/tutorial/bluetooth-basics-how-to-control-led-using-smartphone-arduino

Col·loqueu l'interruptor en posició XBee per poder comunicar, o bé torneu a connectar el shield.

Emissor
(1) Podeu fer la vostra aplicació o carregar aquesta aplicació al mòbil
https://github.com/Mayoogh/Arduino-Bluetooth-Basic/blob/master/LED%20Controller.apk o bé aquesta:
https://play.google.com/store/apps/details?id=appinventor.ai_tellerimicin.Arduinondroid3led
De fet qualsevol aplicació ens serveix amb tal que sapiguem quins són els codis que envia en prémer cada ordre. L'ideal és utilitzar una aplicació ben documentada que ens ho indiqui. Però si el que us agrada és explorar  territoris inhòspits, és tan fàcil com instal·lar un terminal en el receptor, mostrar els codis que es reben i anotar-los. Si l'aplicació envia els codis d'un amb un, no serà difícil treure'n l'entrellat.

Aparellament
Aparelleu el mòbil amb l'XBee, la contrasenya sol ser 0000 o 1234.

Operació
Utilitzeu l'aplicació per encendre a distància el led 13 de l'Arduino amb les tecles 1 i 0. Podeu canviar les línies 32 i 33 del codi per adaptar-les a la vostre aplicació.

Aplicacions
Podeu utilitzar aquest muntatge per controlar llums, robots o altres dispositius. Podeu fer la vostre aplicació a mida o aprofitar alguna més adient al vostra projecte, com ara aquesta per controlar un robot:
https://play.google.com/store/apps/details?id=appinventor.ai_poddarrupak2808.Rupak_BT_Car

Altres microcontroladors
Podeu fer al mateix amb un microcontrolador PIC tal com s'explica aquí.

Crèdits de la imatge: https://commons.wikimedia.org/wiki/File:Arduino_uno_r3.jpg
21 març 2019 - 20:50
Dissabte 30 de març de 2019, se celebrarà a tot el món el Dia de la Llibertat del Maquinari (Hardware Freedom Day) i serà el cinquè cop que el celebrarem aquí. Farem xerrades i tallers de diversos maquinaris lliures a l’Escola del Clot, al carrer València, 680 de Barcelona. L’organitzem entre el Jordi Binefa i Continue reading →
9 febr 2019 - 20:51
Un blog no és el millor lloc per mantenir documentació, per aquest motiu he decidit moure-la a https://docs.aniolmarti.cat. A mesura que vagi escrivint les pàgines allà aniré eliminant les entrades d’aquí. En endavant utilitzaré el blog per divagacions més personals … Continua llegint → 1
2 febr 2019 - 18:12
El proper 30 de març celebrarem el Dia de la Llibertat del Maquinari a l’Escola del Clot (Barcelona). Si hi teniu algun projecte interessant per ensenyar o si voleu oferir un taller, si us plau, contacteu amb mi per fer-vos un forat a la graella.
6 gen 2019 - 18:17

S'ha d'anar amb cura quan es treballa amb números Float en Python. Si no pots trobar-te amb resultats inesperats com aquestos:

cubells@portatil:/tmp$ python Python 2.7.15+ (default, Oct 2 2018, 22:12:08) [GCC 8.2.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> 0.1 + 0.2 0.30000000000000004 >>> round(2.675, 2) 2.67 >>> sum = 0.0 >>> for i in range(10): ... sum += 0.1 ... >>> sum 0.9999999999999999 >>> 9999999999999999.0 - 9999999999999998.0 2.0 >>>

Això és ben conegut per la seua representació aproximada als nostres ordinadors, però no deixa de ser sorprenent.

I no solament passa en python, eh!.

6 gen 2019 - 10:15

Em pose negre en llegir notícies com aquesta, on afirmen que Facebook va registrar una patent, per exemple, amb la qual volen patentar el sistema per el qual, amb les lectures de l'acceleròmetre i del giroscopi del mòbil, obtenir dades de amb qui estàs o amb qui et relaciones.

O per exemple, una altra amb la qual obtenir dades de amb qui estàs o amb qui et relaciones depenent de amb qui has compartit fotos en detectar l'emprempta que deixen els defectes de la càmera o la pols en elles.

I si és aquesta xarxa social qui ho fa, el mateix poden fer altres empreses o governs.

Per a ells, suprimir la privacitat és una cosa normal, és el que els fa guanyar diners. I ja descompten el dret a la privacitat sense cap tipus de vergonya.

Haurem de plantejar-me fer servir menys el mòbil, no?.

Aquest segle serà el segle de la lluita per la privacitat?

6 gen 2019 - 09:24

Els reis ja han passat, i amb ells per fi s'acaba el nadal, i m'han dut un joc d'escacs, que curiosament han sabut que necessitava per la lectura dels llibres que vaig comprar, un ordinador d'un amic al què he d'instaŀlar Ubuntu només puga, no a curt termini, i una mica de revisió, per recordar, i programació en c++ per ajudar la meua filla a resoldre un problema de la universitat de València, on està estudiant teleco.

Però una vegada han passat els reis, quins són els propòsits que tinc per a enguany? Segons la meua opinió, uns bons propòsits han de ser suficientment genèrics com perquè pugues, sinó complir-los, almenys haver iniciat el procés per arribar a complir-los, i han de ser ambiciosos, de manera que t'obliguen a complir objectius que no fas tots els dies. O siga, que han de ser objectius, no tasques.

Aleshores el que m'he proposat per enguany és:

  • Baixar radicalment el consum de sucre: això m'ha de permetre trobar-me millor físicament i perdre pes.
  • Continuar i millorar els meus estudis universitaris: encara que constantment estic aprenent i sempre he pensat que moriré aprenent, també entenc que cal omplir el currículum.
  • Millorar els meus coneixements professionals: mai no tinc prou amb el que ja sé i sempre pense que em queda molt per aprendre.
  • Millorar i promocionar el meu blog: aquest blog que llegiu encara té molta millora i està incomplet.
  • Vull escriure: i ahí lo dejo.
  • Millorar físicament: passe moltes hores davant de l'ordinador en el meu temps lliure. Això ha de canviar.

Com sempre, moltes coses acabaran sent pólvora mullada. Però qui sap, igual aconseguisc parcialment tots els objectius.

Ja vos ho contaré a final d'any.

23 des 2018 - 11:18
ORIGEN=deb-multimediadpkg -l | awk '/^.i/ {print $2}' | xargs apt-cache policy | awk '/^[a-z0-9.-]+:/ {pkg=$1}; /***/ {OFS="\t"; ver=$2; getline; print pkg,ver,$2,$3}'|grep -v /var/lib/dpkg/status| sed -e 's/://'|awk '{printf "%-40s %-36s %-36s %-16s \n",$1,$2,$3, $4}' | grep -i $ORIGEN | cut -d" … Continua llegint → 0
9 des 2018 - 22:22
Dins un entorn amb Debian Sid. Paquets: $ sudo apt install devscripts debhelper pbuilder git vim Fitxer /root/.pbuilderrc: ARCHITECTURE=$(dpkg --print-architecture) AUTO_DEBSIGN=no DEBEMAIL="Nom Cognom <elmeuemail@elmeudomini.com>" DISTRIBUTION=sid MIRRORSITE=http://ftp.caliu.cat/debian Creem l’entorn (això només cal el primer cop, diria): $ sudo pbuilder create Dins … Continua llegint → 0