martes, 29 de diciembre de 2020

Control de qualitat de l'aire amb arduino i sensors CO2

 5 anys!!!!! ufff .. ja ni sabia entrar en aquest blog! ;)

En aquest 5 anys han passat prou coses i una de les més importants és que he canviat de centre de treball. Professionalment he guanyat molt ja que ara estic centrat en impartir docència a Cicles Formatius, cosa que em plena molt (abans era invent rere invent a vore què feia per innovar amb els nanos .. que també estava guai .. peò açò mola més ;)

Be, al lio ... farà un parell de mesos vaig començar a veure aparatets d'aquests que medeixen la qualitat de l'aire però que valen prou diners ... i mirant mirant vaig veure que amb un sensor i un arduino es podia fer alguna cosa i vaig pensar .. vaig a fer-ho.

Com que tinc un Arduino Uno,  em vaig posar a buscar sensors de CO2 i vaig trobar uns molt baratets .. i els vaig comprar. 


Prototip amb arduino uno i sensors MQ135

Únicament es necessita connectar la terra y Vcc al sensor i el pin de dades a una entrada analògica del arduino UNO. Com aquest esquema.


Aquest és el sensor MQ135. Té un problema important ... la calibració. Vaig usar la llibreria MQ135 
https://github.com/GeorgK/MQ135

Però els valors que donava no eren molt coherents ... vaig buscar i buscar i hi havia que, en el codi, variar una constant denominada RZERO

/// Calibration resistance at atmospheric CO2 level
#define RZERO 7300

I per a trobar el valor hi havia que posar aquesta constant a 1 i deixar 24 hores funcionant el sensor. Per consola es treia el valor del rzero .. i quan passaven eixes 24h el valor que es retornava (a poc a poc anava ajustant-se i tendint a un valor concret) era el valor que hi havia que posar en la constant. Compilar de nou i ja funcionava bé el sensor.

Codi utilitzat per trobar el valor de RZERO:


void setup()
{
pinMode(ANALOGPIN, INPUT);
Serial.begin(115200);
float rzero = gasSensor.getRZero();
delay(3000);
Serial.print("MQ135 RZERO Calibration Value : ");
Serial.println(rzero);
}

void loop() {

float val = analogRead(ANALOGPIN);
float res= gasSensor.getResistance();
float ppm = gasSensor.getPPM();
float rzero = gasSensor.getRZero();
delay(3000);
Serial.print(" VAL: ");
Serial.print(val);
Serial.print(" RES: ");
Serial.print(res);
Serial.print("RZERO : ");
Serial.println(rzero);
}



Dades al núvol

El següent pas era que en lloc de tindre un arduino UNO, fer-ho amb un altre controlador que tinguera connectivitat (el meu cunyat XAU va ser el que em va donar la idea) .. i vaig comprar aquest controlador ESP32 amb mòdul WIFI.


Tot igual que amb el UNO però ara les dades en lloc de mostrar-les al Serial o a un LED, podia enviar-les al núvol. I així ho vaig fer .. vaig programar un petit php que obté les dades i les emmagatzema en una base de dades (després veurem el resultat)

https.begin(*client,peticion);
int httpCode = https.GET();
Serial.print("GET http code: ");
Serial.println(httpCode);
if(httpCode != HTTP_CODE_OK) {
    Serial.print("error en la peticion: ");
    Serial.println(peticion);
    String resa = "[HTTP] GET... failed, error: ";
    resa = resa + https.errorToString(httpCode).c_str();
    Serial.println(resa);
}
else{
    Serial.print("OK : ");
    Serial.println(peticion);
}
https.end();


Més o menys la petició https es realitza amb aquest codi.

Les medicions les fa cada 5 segons i treia una mitjana cada minut i això és el que s'envia a la petició HTTPS per a que ho emmagatzeme a la base de dades.

Problema de medicions

Vaig començar a controlar les medicions i variaven moltíssim ... de vegades 450ppm (lo normal són 400 a l'aire lliure) i d'altres donava 30000... UUUppppsss! Algo no funciona massa bé ... 

Buscant buscant .. el sensor alimenta a 5V i aquest ESP32 va a 3.3V però té una eixida de 5V (que és la que li connecte a l'alimentació del sensor). Potser això està fent que els valors no siguen bons. Vaig intentar posar una resistència entre sensor i Arduino, i res. 


Vaig posar un convertidor de senyal de 5v a 3.3v (comprat per amazon) El que fa aquest aparatet és que alimentes a una banda 5v a altra 3.3v i les senyals a 5v les converteix a 3.3 i viceversa.

 

Res de res ... que no prenia valors bons ... Vaig canviar de tàctica .. vaig buscar
els sensors de qualitat d'aire comercials i vaig veure que utilitzaven un sensor
de gas digital .. i vaig veure que hi havien un poc més cars que els MQ135
però que hi havia que provar-ho ...

Ale ... que Amazon ha tingut un client VIP per fer aquest projecte :D

Aquests són els sensors CCS811 que al final he usat en lloc dels MQ135: 


La diferència és que les dades venen pels pins SDA i SCL. El Vcc va a 3.3v,
el GND a terra i per a que funcione, el WAK també a terra. I el prototip  va
quedar així:


El programa per a capturar les dades a arduino és aquest:

void connectWifi(){
Serial.printf("Connecting to %s ", ssid);
WiFi.begin(ssid, password);
int cont =0;
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
cont++;

if(cont==60) break;
}
if(cont==60){
disconnectWifi();
Serial.println("NOT CONNECTED");
}
else
Serial.println(" CONNECTED");
}
void disconnectWifi(){
//disconnect WiFi as it's no longer needed
WiFi.disconnect(true);
WiFi.mode(WIFI_OFF);
}

void setup()
{
Serial.begin(9600);
Serial.println("CCS811...");

if(!ccs.begin()){
Serial.println("Failed to start sensor! Please check your wiring.");
}else{

// Sets the mode to read data each second
Serial.println("DRIVE MODE TO 1 sec.");

ccs.setDriveMode(CCS811_DRIVE_MODE_1SEC);

// Wait for the sensor to be ready
Serial.println("Waiting for the sensor to be ready ...");

while(!ccs.available());
temp = ccs.calculateTemperature();
ccs.setTempOffset(temp - 25.0);

Serial.println("CCS811 Sensor OK");
delay(3000);
connectWifi();

}

}

void loop()
{
Serial.print("Mem free: ");
Serial.println(ESP.getFreeHeap());
muestras++;

if(ccs.available()){
if(!ccs.readData()){
ppm = ccs.geteCO2();
Serial.print("CO2: ");
Serial.print(ppm);
Serial.print(" ppm, TVOC: ");
temp = ccs.getTVOC();
Serial.println(temp);
}
else{
Serial.println("ERROR!");
}
}

media_valor += ppm;
if(muestras == MAX_MUESTRAS){

media_valor= media_valor / MAX_MUESTRAS;
// Si la media de los valores tomados en 1 minuto cada 5 seg supera la zona
// crítica en 3 muestras, se reinicia el sensor
if(media_valor > ZONACRITICA){
valores_criticos++;
}
else{
valores_criticos=0;
}


if(valores_criticos == MAX_VALORES_CRITICOS){
// Se resetea el ESP32 y se esperan 10 segundos
ESP.restart();
delay(10000);
}
else{
// Se calcula la media de MAX_MUESTRAS tomadas
// Se envia


client = new WiFiClientSecure;
if(client) {
client -> setCACert(rootCACertificate);
{

peticion = "https://localhost/mtm_sensor.php?aula=";
peticion = peticion + AULA;
peticion = peticion + "&valor=";
peticion = peticion + media_valor;

https.begin(*client,peticion);
httpCode = https.GET();
Serial.print("GET http code: ");
Serial.println(httpCode);
if(httpCode != HTTP_CODE_OK) {
Serial.print("error en la peticion: ");
Serial.println(peticion);
resa = "[HTTP] GET... failed, error: ";
resa = resa + https.errorToString(httpCode).c_str();
Serial.println(resa);

https.end();
// Si no conecta bien, desconectamos wifi y volvemos a conectar
delay(3000);
disconnectWifi();
delay(5000);
connectWifi();
}
else{
Serial.print("OK : ");
Serial.println(peticion);
https.end();
}
}
client->stop();
delete client;
} else {
Serial.println("Unable to create client");
disconnectWifi();
delay(5000);
connectWifi();
}
media_valor = 0;
muestras=0;

}
}
delay(5000);
}

Què fa aquest codi?

Quan s'encén posa en marxa el sensor i conecta la Wifi amb un SSID i passwd.
Cada 5 segons agafa mostra de valor i cada minut calcula la mitjana dels valors.
Aquesta mitjana és la que s'envia al servidor i s'emmagatzema les dades corresponents.
A més del valor del sensor, un num. d'aula i un timestamp.

Errors detectats i com s'han solucionat?

ESP32 sense memòria.


Com que creava les variables locals a la funció LOOP i aquesta funció es crida contínuament,
el ESP32 arribava un moment que es quedava sense memòria. El que s'ha fet és
posar TOTES les variables GLOBALS i així no es gasta la memòria. A més el client
HTTP s'elimina cada vegada perque es crea cada volta que és necessària una petició
HTTP.

Petició errònia

De vegades la petició HTTP no funciona correctament (no m'ho pregunteu que no ho sé).
El que faig és desconectar la wifi, esperar i tornar a connectar. Així si hi ha algún problema,
reconnecta i au!.

Valors estranys.... coses de sensors.

De sobte va tot bé i el sensor munta cap a 2000ppm ... on anem????? ... solució un poc
"chapuzas" però que vull acabar amb açò ja ... tinc un valor màxim ZONACRITICA que
la tinc a 1600 i si 3 valors consecutius donen per damunt d'aquest valor, reinicie
el ESP32 .. no se perquè se li va la olla .. però al fer açò si supera els 1600 durant 3
medicions seguides, reinicia i torna a medir bé.

Disseny final:

Com ja funcionava, el vaig fer un poc millor (sols un poc) perquè no vaig voler posar-me amb la creació
de la placa PCB... així ha quedat:




I els resultats:

Vaig fer una pagineta amb el CanvasJS que trau les gràfiques i aquestes són d'aquest tipus:


A més, vaig fer altra pagineta que indicava la mitjana del valor dels últims 5 minuts.
Pinta un semàfor del color verd, groc o vermell depenent del valor deCO2 ppm de l'aire.

És aquesta:


CAL OBRIR FINESTREEEEESSSS !!!!!


Bé i açò és tot .. per si a algú li serveix d'algo .. per a fer algún projectet o alguna coseta ..
Aci teniu els codis:


Un saludet a tots i cuide-vos molt!

Antonio Coloma.


martes, 7 de julio de 2015

PMB a lliurex 15.05

PMB a lliurex 15.05


Avuí he instal·lat el server 15.05 a la biblioteca (a un disc dur diferent del que tenia (llx 12) per si acàs no funcionava i havia de tornar enrere ;)


He cregut interessant escriure una entrada al blog perquè no ha estat fàcil que tot funcionara. Vaig a detallar com ho he aconseguit:

Abans de tot he fet una còpia de la base de dades biblioteca 

#mysqldump biblioteca > biblio20150707.sql
  • Instale server 15.05
  • Des de synaptic instale zero-lliurex-pmb-installer 
  • Ara en el zero-center apareix el instalador, però una vegada instal·lat i configurat no ha copiat ni pmb al /var/www/ ni res .. :O
  • Instale els paquets pmb i lliurex-pmb des de synaptic
  • Sorpresa!!! ara si que està el pmb  a var/www !!!! 
Val fins ací tot clar .. però ara no hi ha ni base de dades ni res ...
  • Entre en mysql desde root i sense user ni password
    • #mysql
  • Cree una base de dades buida (l'he anomenada biblioteca .. .què original sóc !!!! :)
---
 Aquest pas l'he fet abans però crec que no feia falta ... 
Actualitzar el fitxer: /var/www/pmb/includes/db_param.inc.php amb usuari i pass i nom de la base de dades

---
  • Des del navegador entre en server/pmb/tables/install.php
  • Dóne les dades de mysql (abans he creat un usuari en mysql per no entrar com a root:
  • mysql> grant all privileges on biblioteca.* to biblioteca@"%" identified by"password";
  • una vegada creada la base de dades i tot restaure en la bbdd de biblioteca les dades d'abans, però cree una còpia de seguretat de la bbdd que m'acaba de crear el pmb.
    • #mysqldump biblioteca >biblio_orig_pmb.sql
    • mysql> drop database biblioteca;
    • mysql> create database biblioteca;
  • #mysql biblioteca < biblio20150707.sql
  • Ara ja tinc la base de dades que tenia abas amb tot el catàleg :)
  • Entre en pmb (admin/admin) i em diu que la versió no coincideix ....
    • Hem d'anar actualitzant i va creant els registres de la base de dades necessaris .. actualitzam fins l'última versió. 

 I quan pense que ja està tot clar ... no connecta amb Z39.50 
(Problema de la llibreria YAZ)
  • Després de provar amb el yaz que ve amb el lliurex i que em dóna un error de (yaz.so: undefined symbol: pval_destructor) he decidit compilar el yaz i el php5-yaz...
  • Descarregue yaz-4.2.30.orig.tar.gz de https://launchpad.net/ubuntu/+source/yaz/4.2.30-4
      # tar zxvof yaz-4.2.30.orig.tar.gz
      # ./configure --prefix=/opt/yaz
(no vull que sobreescriga el que existeix per si acàs)
      #make
      #make install

     Ara descarregue php5-yaz_1.1.9.orig.tgz
    # pecl install php5-yaz
    # apt-get install php5-dev  (em demana instal·lar-ho :O

 #pecl install yaz 
  Quan em demana path to yaz installation: li dic /opt/yaz (que l'acabe de compilar)

   Sols falta afegir yaz.so al php.ini ...
  entre en  /etc/php5/apache2/conf.d i faig un fitxer 20--yaz.ini que continga:


extension=yaz.so

Reinicie apache2:
#service apache2 restart


I ja estàaaaaaaaaaa!!!!!



Perdoneu que no ho haja explicat molt bé però es que ho he fet tot de memòria (ja que no he anat apuntant el que feia mentres intalava ;)

Un saludet i bon estiu!!!!!






jueves, 19 de junio de 2014

Zoneminder a Lliurex 13 - Gestió de càmeres Web


Hola a tots/es!

Avuí vull explicar-vos com he instal·lat la versió de Zoneminder a Lliurex (per provar .. ja sabeu .. ;)


L'explicació és un poc "pesaeta" però per si a algú li serveix ahi va!

1r.  Descarregar el software www.zoneminder.com   v. 1.27.0
2n.  Descomprimir
    # tar zxvof ZoneMinder-1.27.0.tar.gz
 

3r. Entrar en directori i compilar ... 

    # cd ZoneMinder-1.27.0
    # cmake .


    1r problema: No tenim el cmake

    #apt-get install cmake

   # cmake .


    2n problema:  


     zm requires jpeg but it was not found on your system

    Entrem en synaptic i descarreguem
        * libjpeg-dev

 
    #cmake .

    3r problema:  

     zm requires mysqlclient but it was not found on your system

    Synaptic i instal·lem
després d'activar ubuntu com a repositoris i actualitzar:
        *mysql-client

        * libmysqlclient-dev
    

     #cmake .
      
    4t problema:
        zm requires crypto or gnutls but none were found on you system
      
        Amb el synaptic instal·lem els paquets:

            * libgnutls y libgnutls-dev
 
        #cmake .

    5t problema:
         Not all required perl modules were found on your system

        #perl -MCPAN -e shell
       [ ... ]


        yes a tot ;)

        cpan> install Date::Manip
        cpan> install Sys::Mmap


    Per fí ja està tot el que necessitem!!!

    #make
    #make install


Al compilar dóna: Error en MD5
Per solucionarf-ho:
    Baixe openssl --> Compilar i instalar ;

  ./config --prefix=/usr/local --openssldir=/usr/local/openssl


    De nou compilem el Zoneminder:

    #./cmake .
    #make
    #make install

    Com que ens fa falta el servidor web:


    * Editar el conf apache2:

    cd /etc/apache2/sites-enabled/000-default

        Alias /camara/ /usr/local/share/zoneminder/www/
        <Directory /usr/local/share/zoneminder/www>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>


     Reiniciar apache
   
    #/etc/init.d/apache2 restart


    Zoneminder necessita una Base de dades amb Mysql:

      #~/ZoneMinder-1.27.0/db# mysql -u root -p < zm_create.sql

    Configurem el zoneminder: 

    /etc/zm.conf  --> User/pass de bbdd
    
    I per a que s'inicie a l'iniciar l'ordinador: 

    Init script --> cp  /usr/local/bin/zmpkg.pl /etc/init.d



    I ja està!!!! Sols queda configurar les càmaares .. però això ho deixem per a altre dia ;)

Un saludet!
Antonio.

martes, 7 de enero de 2014

Ies Bell X - Gestor Alarmes a Linux

Hola de nou a tothom!

Ja fa més d'un any que no em passe per aci ... però com sabeu no hi ha temps per a res! :)

He creat el programeta de alarmes per a l'institut en la seua versió per a linux .. ho he fet amb Gambas2. És prou senzill, però així evitem tindre l'ordinador de la sirena amb Windows ... ja sabeu el perquè no?

La versió a 7 de gener de 2014 és molt senzilla ... sols permet posar l'hora i el fitxer mp3 o ogg ... però es que he preferit que funcionara el minim primer i després ja li afegiré cosetes ;)

La pantalla inicial és :


I ho podeu descarregar (codi font inclòs) des de Sourceforge.

Un saludet i Bon any 2014 a tots/es!

Editat: 02/02/2014 Modificat bug que no permetia seleccionar cançò! Ah .. al meu IES ja està funcionant una setmaneta i de moment tot bé! ;)

miércoles, 11 de julio de 2012

Estalvi d'energia ... apagant terminals

Al meu IES tenim aules matèria, per la qual cosa podem tindre un ordinador (de vegades és un toshiba dels molt molt antics) per aula on podem passar llista, mostrar recursos online (a moodle o altra plataforma) ... etc.

Què és el que passava? Que  moltes nits el centre estava "encés" perquè molts ordinadors no els havien apagat ... (en fi ... no comment que m'encenc!!! )

Avui he revisat tots els ordinadors de les aules i, a més d'actulitzar molts d'ells a lliurex nemo 12.06 , he incorporat l'ordre al cron per que s'apaguen ells soles:

#sudo -i    (per fer-nos superusuaris)
(posem la paraula de pas dcorresponent)

#crontab -e
.... s'edita el fitxer amb el nano per exemple ...

35 15 * * * /sbin/shutdown -h now
35 21 * * * /sbin/shutdown -h now

Es guarda i ja està. Per a verificar-lo posem
#crontab -l
i ho verifiquem

Però quin és el problema ... que alguns ordinadors (sobretot els vells amb lliurex 9.09) no tenen l'hora sincronitzada. El que he fet és posar aquest script:

----
#!/bin/bash
export http_proxy="http://10.0.254.254:3128"
/bin/date -s "$(/usr/bin/wget --no-cache -S -O /dev/null google.com 2>&1 | sed -n -e '/  *Date: */ {' -e s///p -e q -e '}')"

----
L'he anomenat /root/data.sh i en l'script d'arranc he inclòs la seua cridada a /etc/init.d/rc.local

Per què he fet això .. perquè he provat a fer un ntpdate a pool.ntp.org i no anava i amb aquest script agafe l'hora d'un servidor i la modifique amb el comandament "date" de linux.

I mentre escric açò crec que he estat perdent el temps perquè crec que el server lliurex (en el meu cas 10.0.254.254) té un server ntp i podria haver afegit al script rc.local :

ntpdate 10.0.254.254 i ja estaria ... :)

En fi ... que també m'ho he passat bé provant l'script ... :)

Un saludet!

domingo, 19 de febrero de 2012

Veure pelis de netflix a casa amb un apple tv 2

Després d'una vesprada sencera .. ho he aconseguit .. i és que de vegades la cosa més fàcil es complica per una xorradeta ;)
El cas es que el meu cunyat em va dir que veia pelis de netflix amb l'ordinador utilitzant un servei de vpn i em vaig posar a investigar ... 

Netflix és el servei de pelis online de Estats Units, però que sols poden subscriure's aquelles personetes que es connecten des d'alli. Però hi ha serveis de pagament com BlackVPN que et permeten fer una VPN entre el teu ordenador i un d'ells en USA i pots enregistrar-te a Netflix. Fins ahi bé ...

Conseguisc connectar-me a Netflix i em done d'alta ... connecte amb l'ordinador (Mac OSx Lion) i va de perles ... puc veure pelis en l'ordinador.



Però i amb l'apple TV 2 ? ..  Passos que he seguit:
a) Fer el meu mac ox x, un Router.
a.1) Connectar amb BlackVPN (crea una interfície tun0 )
a.2) Crear script i executar-lo:
#!/bin/sh
natd -interface tun0
ipfw -f flush
ipfw add divert natd ip from any to any via tun0
ipfw add pass all from any to any
sysctl -w net.inet.ip.forwarding=1

 a.3) Configurar el aparatet (apple tv)

1.- Posar apple tv 2 amb el pais USA
2.- Modificar la IP del gateway per a posar la IP del ordinador amb MAC OS X (el que hem executat l'script)
3.- IMPORTANT: Canviar la DNS del apple tv a la de Google: 8.8.8.8
Açò és el que m'ha tornat boig .. com que no podia resoldre DNS amb les del meu ISP, el AppleTV no connectava a Internet.
4.- I a veure Netflix (Apareix a un submenu del apple tv)

Per tant .. una connexió VPN amb BlackVPN:  5€ / mes
Alquilers il·limitats al mes amb netflix: 7.99 USD = 6 €  i poquet

Per poc més d'11 € al mes puc veure pelis i documentals a tutiplen ;)

Cosa a tenir en compte: ESTÀ TOT EN ANGLÉS (Però podem posar subtitles amb anglés) ;)

Ale .. un saludet!

miércoles, 5 de octubre de 2011

Gestió d'Incidències TIC en un IES

Hola ... ja fa prou de temps que no escrivia cap cosa .. ja ha arribat el moment després d'un meset de setembre un poc liat :-)
Bé .. vos compte la experiència d'aquest any ... com que era la personeta que feia les tasques de coordinació TIC ( tot i que no ho era - aquesta any ja ho soc :-) .. i com que els profes es paraven pels corredors dient .. " es que l'ordinador de l'aula no va, .. que vull un grup en el moodle ... que .. etc. etc. "
i a mi moltes coses se m'oblidaven (uno ja va fent-se majoret :-) .. donc he pensat aquest any possar una gestió d'incidències TIC a la web i per això he possat el MANTIS bug tracker ...


La instal·lació es prou senzilla ... Crear BBDD i canviar el config.php ( o algun fitxeret per l'estil) i a còrrer ...
Funciona de la següent manera:
Cada departament té un usuari i pass. Entren .. creen una incidència (Poden escollir de diverses categories que he creat : Biblioteca, Sala profes, Aules d'informàtica ... etc) i m'arriba a mi (administrador :-) .. la resolc ( o no ) i a una altra .. així d'aquesta manera no he de anar apuntant en paperets les tasques a fer.
I així puc saber quins departaments donen més la llanda .. i tot això.
Bé .. res més per ara .. un saludet !
Antonio.

domingo, 6 de marzo de 2011

Programari de gestió d'alarmes Mp3

Hola!

Quant de tems .. !!! ja ni me'n recordava del blog !!!
Bé! .. el meu centre (IES Almadrava) té un amplificador i un aparato de melodies que es programa a certes hores i toca la "sirena" ... però la sirena es una musiqueta que de tant sentir-la al final ja l'odies fins i tot!!!!!
Vaig cridar a l'empresa del aparatet .. i em demanavem quasi 600 euros per un mòdul que permetia llegir musica d'un dispositiu usb i reproduïr-la ...
Els meus companys Saoro i Jaume de l'IES Pere Maria Orts de Benidorm em van dir que ells utilitzaven un ordinador com a sirena amb tasques programades... i vaig començar a "rumiar" ....

D'altra banda al costat de l'amplificador hi ha un ordinador que el tinc connectat a una TV al hall de l'IES i amb una petita aplicació PHP mostre les noticies més importants relatives a l'IES.
Com que l'ordinador ja el tinc i molt a prop de l'amplificador ... vaig comprar el cable d'audio per a connectar la eixida de so del ordinador a l'amplificador ... (després de vore la doc tècnica de l'amplificador i localitzar l'entrada )
Sols em faltava el programeta d'alarmes .. perquè no volia estar liat amb tasques programades .. etc.
Com que no el vaig trobar ... doncs n'he fet un ... amb C# ...
I ací està una captura de pantalla i l'enllaç al programa a sourceforge.



Enllaç a sourceforge: http://sourceforge.net/projects/iesbell/
Un saludet!

Antonio.

viernes, 21 de enero de 2011

Canvi de resolucio en lliurex lite 9.09

Hola!

Al meu centre hem posat en algunes aules TV de 40 ' LCD (ara estan baratetes :-) i les hem connectades a l'ordinador que hi ha en l'aula (des d'aquest any són aules temàtiques i vaig estar tot el mes de Juliol posant ordinadors i configurant-los per accés a Internet .. ufff em canse només de recordar-ho :-D )

Quin problemeta m'he trobat? .. que en algunes aules tenia el lliurex lite 9.09 i la resolució de pantalla no era la adecuada per a veure's en la TV i en el monitor a la vegada ( he utilitzat un cable  Y VGA)
He estat buscant com canviar la resolucio i amb el xconf.org no ho he pogut fer ...

He trobat un comandament que no coneixia:
El xrandr, que si l'executes sense parametres et diu quines resolucions pots aplicar:
#xrandr 

Però si li poses el parametre -s i el numero de la resolució, te la canvia ...per exemple:

#xrandr -s 3 

He provat en algunes resolucions i m'ha funcionat (es veia la TV i el monitor a la vegada :-)
Sols calia posar-ho per a que entrara a les X amb aquesta resolució. Per això he fet el següent:

Després de consultar-ho amb algun forum d'ubuntu he trobat que al fitxer:
/etc/gdm/Init/Default 

Si després de les linies on posa:
PATH="/usr/bin:$PATH"
OLD_IFS=$IFS

posem l'ordre xrandr la resolució de la qual és la desitjada .. l'ordinador arranca amb aquesta resolució :-D
En el meu cas:
PATH="/usr/bin:$PATH"
OLD_IFS=$IFS
#xrandr -s 3

Res mes .. un saludet

lunes, 17 de enero de 2011

Servidor lliurex .. una aventura per contar

Hola!
La primera setmana de classe de Gener ha estat un poc complicada per un tema relacionat amb un servidor d'aula amb lliurex 10.09. El problema que tenia era que molt sovint es bloquejava. Si la pantalla estava encesa, es cubria de molts "cuadraets" de colorets :-) .. qué mono!!! ...
Els dos primers dies creia que era un problema puntual (d'alguna actualització o alguna cosa per l'estil ... i no vaig investigar ...
Però al tercer dia ja em vaig mosquejar prou ..
  • El server estava actualitzat .... per tant no podia ser d'actualitzacions ...
  • Vaig vore si era questió d'algun paquet que no estava ben instal·lat i amb el sinaptic vaig tornar a instal·lar algun paquet com ara el lliurex-moving .. ja que de vedades es quedava bloquejat al sincronitzar els fitxers dels clients amb server. Tampoc vaig tindre sort :-(
  • Serà cosa de RAM? Li vaig canviar la RAM per una altra d'un altre server que tinc "lliure" de moment ... "moc, moc, moc, mooooooooooooooooooc" .. res de res ... fallava igual ...
  • Parlant en un tècnic del SAI que conec (li vaig donar classe de CCFF) em va dir que en clients inves or62 i or63 havien  tingut error de la targeta gràfica i que instal·lara el paquet xserver-xorg-video-intel-video-5 ... ho vaig provar .. però res de res .. seguia pentjant-se.
Com que en el server estaven creats tots els usuaris i ja tenien aplicacions específiques alguns d'ells, no podia instal·lar el server de nou ...i vaig pensar ... i si li canvie els discos a l'altre server "lliure" que tinc :-) ?
Dit i fet ...

  • Operació Canvi de discos ... perfestos ... sols una cosa ... a l'iniciar de nou el server no agafa be les targetes de xarxa ... 
Em sonava que en http://www.edutictac.es en algun fòrum van dir algo de les targetes ... i vaig mirar ...
Efectivament!!! --> http://coordinadorstic.edutictac.es/mod/forum/discuss.php?d=134

Gràcies a @_silent_bob per a que agafe targetes començant per eth0: "eliminar el fitxet /etc/udev/rules.d/70-persistent-net.rules i reiniciar el ordinador".

Dit i fet .. i perfect!!!!! ... per ara cap problema !!!!!
I fins aci la meua odisea amb el server .. el que faré ara és instal·lar de nou el server que m'ha estat fallant amb els discs que li he llevat al que tenia "free " i a esperar que aquest no falle !!!!

Un saludet!





 

domingo, 16 de enero de 2011

Canvi de format de data en Wine

He intentat instal·lar el Contasol 2011 en Lliurex10 i, a més de posar les llibreries anomenades en la entrada del blog anterior a aquesta, he vist que s'ha de canviar el format de la data en Wine ja que sino no funciona.
Per a fer açò:
Anar al fitxer .wine\user.reg i canviar el valor de la entrada
"sShortDate" al valor:
"sShortDate"="dd/mm/yyyy"

També s'ha de fer el mateix amb el fitxer wine.ini dins del directori windows de wine.

miércoles, 15 de diciembre de 2010

Instalar Factusol i Contasol amb Lliurex i Wine

Factusol i Contasol són programes de contabilitat gratuits que fan servir els companys de Administració i Finances del meu IES.
Ara explique com hem instal·lat amb wine aquests programes:


Instal·lació de Contasol i Factusol.

  1. Descarregar els arxius
    constasolinstalarweb.msi i factusolinstalarweb.msi des de la web http://www.sdelsol.com/es/contasol.php
    (La versió que he instal·lat és la de l'any 2009) 



  2. Hem de descarregar el  winetricks.sh des de http://wiki.winehq.org/winetricks
    Aquest és un script que ens permet instal·lar llibreries windows a wine.

  3. Executar contasolinstalarweb.msi i seguir l'assistent.
  4. Executar factusolinstalarweb.msi i seguir l'assistent.
  5. Una vegada acabat, executar winetricks.sh
    1. Quan pregunte, hem de dir-li “Ejecutar en un terminal”

    Quan aparega la pantalla de winetricks hem de seleccionar les següents llibreries:

      • comctl32
      • jet40
      • mdac28
      • mfc40
      • mfc42
      • vb6run
      • native_mdac
      • native_oleaut32

        Hem d'anar acceptant “Yes” en totes les finestres que apareguen (i si apareix algun assistent, donarli a Siguiente y Finalizar”

        Un saludet!


sábado, 4 de diciembre de 2010

Instal·lació de model d'aula

Després de dessistir amb el model de centre (deixe treballar als que saben), he instal·lat el model d'aula ...
Gràcies a @toaupload he descarregat la beta del zero-net-boot de lliurex 10.09 i he pogut instal·lar la imatge als ordinadors baixant-la des de la xarxa amb el tcos.
El primer que he fet és habilitar la ON Boot LAN Option de la BIOS dels clients d'aula  per a que puguera arrancar des de PXE.
Una vegada arranca, es podia seleccionar Client d'aula --> Instal·lar ... i així ho he fet.

Com que en la meua dotació de centre els switchers no eren giga :( he llançat els ordinadors de 6 en 6 ja que més no donava el 100mbps :-)

Una vegada l'aula instal·lada, cap problema ... ara sols em toca instal·lar el lliurex lab en l'ordinador del profe per a poder monitoritzar l'aula.
La veritat és que el rendiment dels ordinadors ha millorat ja que sols està al server els documents i no tota la cache del firefox, per exemple ... :-)

martes, 30 de noviembre de 2010

Un últim apunt abans de llançar la tovallola....

Hola!

Ja no puc estar més sense aula i per tant vaig a instal·lar un server independent ... reposaré aquest tema de model de centre més avant ...
Però abans de tancar el tema dir una ultima cosa... els servers de centre i els integrats HAN DE ESTAR SINCRONITZATS amb ntpdate, ja que sino l'actualització de kerberos no funciona (o al menys és el que m'ha passat a mi ja que el server de centre estava 30 minuts desfassat respecte al de l'aula).
#ntpdate pool.ntp.org

Un saludet .. i a altra coseta :-D

Hem trobat el fallo ... falta resoldre'l

Twitter és la bomba ... gràcies a ell el mestre @_silent_bob em va dir açò respecte a la rèplica dels usuaris a l'aula ...
--
puede ser krb5 no este en marcha o no se haya replicado bien. Prueba con llxcfg-krb5 --force init en el integrado
--
Doncs execute l'ordre ... i mireu el que passa:
llxcfg-cpkg: Running post-cpkg scripts ...
(Frontend: Sending command ...)
(Backend: Command received. Running ... "CPKG"
 * Restarting Kerberos administrative servers kadmind
kadmind: Invalid credentials while initializing, aborting
 * Restarting Kerberos KDC krb5kdc
krb5kdc: cannot initialize realm 3010843.MA3.LLIUREX.NET - see log file for details
   ...fail!

I el logfile (/var/log/syslog ...
Nov 30 11:35:55 server kadmind[27433]: Invalid credentials while initializing, aborting
Nov 30 11:35:55 server krb5kdc[27473]: Invalid credentials - while initializing database for realm 3010843.MA3.LLIUREX.NET


Ara bé ... ni idea de com fer que les credencials funcionen ... a verure si al final veem la llum :-D

Un saludet !

lunes, 29 de noviembre de 2010

Lliurex 10.09 Replicando ldap pero ...

Hola de nou!

Seguisc amb les meues ganes de posar el model de centre lliurex 10.09 ... ara conte l'experiència d'avuí:

He pensat que el server de l'aula estava molt "toquetejat" i amb el zero-server-wizard l'he convertit a un server independent... per a començar de nou ...
Per si acàs he eliminat tot el que havia a /net/homei a /etc/lliurex-cap/3010843
He verificat que el fitxer /etc/ldap/slapd.conf no feia referència a replicació ... tot corecte.
Reinicie per si acàs.... :-D (windows deformation)
Després he començat amb el zero-server-wizard aquesta volta amb server integrat d'aula: Nº aula: 2
Quan he acabat he mirat el ldap .. la conf ja fa referència a la rèplica ... guay! ... he fet un ldapsearch al server de centre (ip de manteniment) i al server d'aula i em  troba tots els usuaris en ambdues recerques!!! guayyyy!

Ah ... ara el lwat si que va ... entre en el server d'aula cree un usuari i en el server de centre el troba .. guay!
L'elimine del server de centre i entre en el server d'aula i va!!!! guaaayy!!!!
Però ... /net/home està buit ... vaja!
Doncs he executat a mà :
#lliurex-cap set-defaults ....
#lliurex-cap join 3010843 lliurex-admin@ip_manteniment_server
Pose el password i comença a fer coses ... quan acaba veig que s'ha fet el rsync ... guay!!!

Reinicie de nou  .... (per a que inicie ldap, kerberos .. etc)
Però intente entrar en qualsevol usuari no local (que estan al LDAP) i no entra ni en el server ni en qualsevol ordenador de l'aula ...vaja .. quasi ho tenim ... però falta el toc final :-D
Ara recorde que en el taller de model de centre del IV congrés programari lliure  -lliurex- quan vam fer la prova de donar d'alta usuaris en el server de centre i entrar des d'una aula .. no ens va funcionar peò com era tard ja no ho vaig preguntar ... llàstima .... :-D

Bé .. demà fare més provetes .. un saludet!

Antonio.

domingo, 21 de noviembre de 2010

Instal·lació de PMB a la versió 10.09 de Lliurex

Be, vaig a contar-vos el que vaig fer l'altre dia per instal·lar el PMB de gestió de biblioteques i els problemetes que vaig tindre:
1. Abans de tot, dir que vaig instal·lar la versió 10.09 de biblioteca perquè els clients lleugers no em funcionaven amb la 9.09 (i en aquesta, el xic del sai que em va fer la migració em va deixar el pmb funcionant .. però no els thin clients) ... era cosa de les X .. però li vaig pegar mil voltes i vaig decidir canviar a la 10.09

2. El primer que vaig fer després de fer una còpia de la base de dades del mysql de la biblioteca va ser instal·lar la 10.09 ... sense cap problema.

3. Sempre que s'instal·le un servidor lliurex hem d'entrar al zero-center i, almenys configurar la xarxa interna (eth0 per defecte) i el codi del centre. Sino pot ser que alguns noms del dns no responguen, com per exemple "biblioteca" :-D

4. Directament vaig posar al firefox ... http://biblioteca i em va eixir una pantalleta que deia: usuari www-data@localhost not allowed ( és a dir .. l'usuari de la base de dades del mysql no era correcte) ... bé.

5. La mateixa pàgina em deia que executara l'script tables/install.php ... i això vaig fer.

6. Resultat: Que em demanava la contrasenya de root i no la tenia :-( però ala !!!!! si en la consola entre sense contrasenya ... pos la canvie :-)
#mysql -uroot
#mysql> grant all privileges on *.* to root@"%" identified by "elmeupass";
#mysql> grant all privileges on *.* to root@localhost identified by "elmeupass";
#mysql> flush privileges;
(clar està que abans de tancar la finestra del mysql que acabe d'entrar amb root, prove que entre be amb la nova password)

7. Una vegada que ja he canviat la contrasenya i entra be com a root... ejecute l'install i cree l'usuari pmb amb la pass i la base de dades.

8. Ja el tinc creat ... ara sols falta especificar al pmb que entre amb l'usuari i pass creat.

9. Al fitxer /etc/pmb/debian (i no se que més :-( .. ara no puc veure-ho és on s'especifiquen les dades que utitlitza el pmb per a entrar al sistema.

10. I Ja està .. sols em faltava restaurar la bbdd ...
#mysql -uroot -pelmeupass basededades <scriptbiblioteca.sql

Fins la pròxima :-D

viernes, 19 de noviembre de 2010

Instal·lació del server de Centre Lliurex 10.09

Avuí he instal·lat el primer servidor de centre (lliurex 10.09) en un servidor que em va arribar de dotació i que encara no estava utilitzant. Vaig a comentar els passos que he donat per a la instal·lació:
  • Una vegada realitzada la instal·lació que l'he feta particionant manualment el disc (1 giga per a /boot, 4 gB per a swap, 30 per a / i la resta -uns 125 Gb- per a /net )
  • El primer que he fet es actualitzar els paquets del servidor (opció d'actualitzar el servidor des de Sistema -> Administració) 
    • Com que no em deixava actualitzar (ja que sols estava marcat el repositori local) he marcat com a repositori el de lliurex -en l'opció de repositoris de synaptic sols hi ha que marcar-la.
  • Una vegada s'ha actualitzat el sistema (després del reset de rigor) he estat buscant la manera de dir-li que era un server de centre. Açò es fa des d'un terminal amb l'ordre  #zero-server-wizard
  • Aquesta ordre llança un assistent on ens pregunta:
    • La LAN interna (eth0 per defecte)
    • La LAN externa (eth1 per defecte) i DHCP tot i que se li pot dir una estática
    • DNS (venen preconfigurats)
    • Xarxa de manteniment. L'he associada a la eth1 (externa) amb una IP de manteniment ja que per ací actualitzarà el LDAP i el lliurex-moving
Be, ja el tinc instal·lat .. el proper dilluns el posaré en marxa després de fer la càrrega d'usuaris des de GesCen i ja vos contaré ...:-D

jueves, 18 de noviembre de 2010

Planning de migració ... part 1

Avui he començat amb el planning de la migració dels servidors d'aula i de centre a la versió 10.09 de Lliurex. Per a fer un poc d'història ... adjunte la "foto" de xarxa de com està fins ara. Servidors independents cadascú amb els seus usuaris ..etc.
Per a que tingueu una petita idea de com estic intentant estructurar el centre, tots els clients de les aules temàtiques són lliurex, tant 9.09 desktop o lite. A més, els thin clients "xuplen" dels servers corresponents (biblioteca, Sala profes... etc)


La meua idea és que tots els servers actuals estiguen replicats (com ho permet la 10.09) i que un profe puga tindre els seus documents en qualsevol ordinador que autentique en qualsevol server. Adjunte la foto de com vull que estiga la xarxa. Els clients Lite i desktop de les aules, seguiran sent aixó .. clients lite o desktop amb proxy el server del centre. (Això ho deixaré per a més avant)


Per tant el primer pas és crear el server de centre ... i després el server de la sala de profes. D'aquesta manera ja tenim el nucli del model de centre. Ah! el server de la sala de profes l'instal·laré com a un server d'aula ja que no es poden tenir dos servidors de centre (això és el que em van dir al congrés de lliurex a València)

miércoles, 17 de noviembre de 2010

3, 2, 1 .... ja!

Ja fa temps que vull fer açò ... compartir experiències TIC a l'educació i crec que ja ha arribat el moment de fer-ho. Comence aquest blog per què totes les qüestions que es plantegen per a una bona educació amb TIC puguen ser compartides a la xarxa...
Intentaré plasmar ací els dubtes TIC que tinga i que resolga. Des de dubtes relacionats amb recursos educatius fins a dubtes d'instal·lació i configuració de certes ferramentes relacionades amb les TIC.

Espere que vos agrade.