dilluns, 11 d’abril del 2022

Topics html5



<!DOCTYPE html> 

// Doctype es sumament important per a que els navegadors
// interpretiguen com a codi actual la pagina web



<h1>

// existixen 6 tipos de headers <h1...h6>
// Estes nomes han de tindre tituls i subtituls de seccions
// Aquesta informacio es indexada per els buscadors

<h1> Soc un titul</h1>


<p>

// per a fer punt i a part a un parraf lo correcte es afegir
// un altre parraf.


<p> Hola don pepito </p>.
<p> Hola don Jose </p>


<hr> 

// Genera un separador com una linea negra


<!-- Comentaris -->

// Comenta texte o informacio, es multilina.
// El contingut dels comentaris es pot revisar desde la consola
// de inspeccio de chrome, mozilla, etc.


<span>

// serveix per a referenciar texte dins de altres etiquetes.
// span indexa informacio als buscadors.
// Podem remarcar visualment sempre podem afegirli un
// primer style:

<p>

Hola mon que tal, aqui tenim un

<span style="color:blue"> Misatge remarcat <span>

Per a que els indexadors de informaico ho troben millor

</p>


<br> 

// Genera un salt de linea, aquest pot estar dins de un <p>
// o fora com un element mes.


<a href="">

// ancla un link cap a una direccio
<a href="www.eric-sama.com"> mi web </a>


// obri una nova pestaña a la direccio
<a href="www.eric-sama.com" target="_blank"> mi web </a>


<img>

// Adereix una imatge, podem generar un tag autotancat
<img src="ruta/directori/image.png" />

// Podem modificar les propietats de altura i amplada juntament
// nomes modificant una de les dos propietats "widht o height"
// Mantenint una correlacio amb les mides de la imatge o
// deformarla aplicant noves normes de visualitzacio

// Correlacional amplada x altura
<img src="ruta/directori/image.png" widht="400"/>

// Deformada amplada x altura
<img src="ruta/directori/image.png" widht="400" height="100"/>


<form action="/formulario" method="">

// Dins de form  introduirem etiquetes per a recaudar informacio
// del usuari

// action = equival a la accio que fara cuan donesem a submit
// metod = Existeixen 2 metodes:
// GET envia el valor dels camps a trabes de la URL fins a 256 caracters url
// POST no es segur com get, nomes enviara les dades  ala cabecera.
//      LA FORMA CORRECTA DE ENVIAR INFORMACIO ES AMB CERTIFICATS


Etiquetes internes form:

<label for="nombre">nombre</label>
// for="id" permet que al fer click s'active la entrada 

<input type="text" id="nombre" name="" placeholder="Nombre"/>
// input corresponent.

// type="" Y han diferents typus de entrades, per defecte es text
// submit = botton
// email = espera un valor imail,
// password = oculta lo que entra
// radio = es transforma en un botto de radio
// checkbox = casilla clickeable
// file = espera que ingreses un archiu

//
// name="" la propietat de name el servidor interpretara un
// objecte de formulari, en forma de clau,
// i un valor de contingut
//

// placeholder="" es una forma similar a lavel, on ens indicara
// el valor a contindre de una manera suau i desapareixera
// al fer click


<label for="nombre">comentario</label>
<textarea rows="10" cols="50" id="comentario" placeholder="Ingrese comentario" name="comentario"></textarea>

// textarea ens permet la entrada de un text.
// rows="" Numero de files
// cols="" Numero de columnes


<input type="submit" />
// submit genera un boto
// Aquest boto agarrara totes les entrades i les enviara al servidor

<button type="button/resset/submit">Enviar</enviar>
// button = sera nomes un boto al cual aurem de
// especificar amb js el comportament que tindra
//
// resset = resetejara els valors predeterminadament
//
// submit = enviara el contingut del formulari
// la targeta button es mol mes personaliitzable que input


<ul>

// agregar una llista no ordenada

<ul>
<li>element1</li>
<li>element1</li>
<li>element1</li>
</ul>


<ol>

// agrega una llista ordenada

<ol>
    <li value="50">element1</li>
    // comensaria a llistar a partir del 50
    <li>element1</li>
    <li>element1</li>
        <ol>
            <li style="list-style-type: lower alpha";>element1</li>
            // Style predefinit de llistat
            <li>element1</li>
            <li>element1</li>
</ol>
</ol>


<table style="width: 500px;" >

//agrega una tabla amb una amplada de 500px

<table>
    <thead>
    // Iniciem la capçalera o el tituls de les collumntes
        <tr>
            <th<Producto</th>
            <th>Precio</th>
        </tr>
    </thead>
    <thbody>
    // Inscertem els productes
        <tr>
            <td>HolaMon</td>
            <td>Gratis</td>
        </tr>
        <tr>
            <td>Ganchitos</td>
            <td>1€</td>
        </tr>
        <tr>
            <td>Gachito feliz muy feliz</td>
            <td>99.99$</td>
        </tr>
    </thbody>
    <tfoot>
        <td></td>
        <td>total: 59$</td>
    </tfoot>
</table>


<style>

//Afegeix estil css, lo recomanable es publicarlo a banda a un archiu css.
// tambe es pot declara a html.
<style>    
    table, th, td{
        border: 1px solid black;
    }
</style>


DIVISORS

// Hi ha diverses maneres de agrupar en box o grup als elements
// de la nostra pagina web.



<div>

// es una divisio amb contingut, comunment s'han anat
// anidant divs dins de divs pero a la practica es engorros
// google premia els divs sense anidar
<div>
    <h1> Hola mon </h1> 
    <p> Este es un parraf </p>
</div>


<secction>

// es una seccio amb contingut
// Esta etiqueta actua igual que div pero diversifica el lexic
// Permetent un ordre visual mes correcte


<div>
    <section>
        <h1> Hola mon </h1> 
        <p> Este es un parraf </p>
     </seccion>
     <section>
        <h1> Hola lluna </h1> 
        <p> Este es un parraf </p>
     </seccion>
</div>



<article>

// es un objecte per a crear articles.
// <p><img><a>...

<div>
    <section>
        <h1> Hola mon </h1> 
        <p> Este es un parraf </p>
     </seccion>
     <section>
            <article>
                <h1> Hola lluna </h1> 
                <p> Este es un parraf </p>
            </article>
            <article>
                <h1> Hola Sol </h1> 
                <p> Este es un parraf </p>
            </article>
     </seccion>
    <section>
        <h1> Hola mon </h1> 
        <p> Este es un parraf </p>
     </seccion>
</div>


Altres atributs


//id="" La id es unica i no es pot repetir
//class="" La class pot ser compartida per diferents elements
//
// Estos 2 atributs serviexen per despres ser cridades per
// JS o CSS.



FUNCIONALITATS EXTRES

CREAR REFERENCIES DEXPLORACIO DINS LA WEB

<a href="#titulo">Ens mourem dins la pagina fins a titul</a>
// ES IMPORTANT DECLARAR EL ATRIBUT ID AMB EL VALOR TITUL



diumenge, 10 d’abril del 2022

GIT, control de versions, repositoris i com utilitzarlo amb github


Git és un sistema de control de versions, un programari que serveix bàsicament per gestionar les versions per les quals va passant el codi dels projectes.

Git és el més popular dels sistemes de control de versions actualment i una de les eines més indispensables per al desenvolupament de projectes.

Encara que un sistema de control de versions serveixi justament per controlar els estats pels quals ha passat un codi, la veritat és que l'eina git facilita molt el desenvolupament dels projectes en equip, així com altres operacions relacionades amb el flux de treball dels desenvolupadors.

//
//  Per a estandaritzar git i un millor funcionament en windows utilitzar la Aplicacio GitBash
//


//
// Per a una millor estructuracio es recomanable tindre un directori
// workspace i dins tots els projectes, d'aquesta manera tindrem tots els projectes centralitzats
// i no esperdigolats.
//


Fluxe de treball de git





Per a treballar correctament amb git em de compendre que aquest treballa per etapes.
Hi ha 4 etapes que segueixen el seguent ordre:

PC -> Stage -> Commit -> Server

PC

//Desde el ordinador podrem agregar i eliminar archius al stage
git add

Stage

// Stage es una etapa intermitja per determinar quins canvis efectuem per enviar al repositori.
// Un cop aguesem revisat la etapa de stage podrem traure els canvis no desitjats i enviarlos
// al repositori amb el seguent commando

git commit

Commit

// Aqui acavem de comprometre els archius que volem pujar al servidor amb push
git push

Server

// github, bitlocker, etc...


Post instalacio git, configuracio local

// Configurar el nom que volem asignar
git config --global user.name "NomUsuari"


// configurar el compte correu
git config --global user.email contacte@esama.com


// indicar a git vscdoe com editor predeterminat
git config --global core.editor "code --wait"


// veure el archiu de configuracio global
git config --global -e



CORE.AUTOCRLF depenent del sistema operatiu on estigues treballant.

//Mes informacio: AQUI

//windows core.autocrlf
git config --global core.autocrlf true


// linux/Mac core.autocrlf
git config --global core.autocrlf input


//Llistat de configuracions
git config -h



Commandes basiques per moures amb bashGUI

ls        -> listar directori
pwd       -> imprimir direccio directori
cd        -> moures a un directori
mkdir     -> crear un directori
mv        -> Moure de directori un archiu o canviar el seu nom.


Inicialitzar un repositori

// Primer dirigirse al directori amb la terminal, per seguidament declarar:
git init


//Si vulgueseum veure el directori .git creat dins del directori.
ls -a

// la carpeta .git es sempre ignorada i no es compartix dins del repositori.
// Podem obrir cualsevol carpeta amb code fent la seguent ordre, estan dins del directori:

code .



Status del nostre repositori

// status ens dira els archius compromesos dins del repositori
git status

// Tambe ens indicara els archius que han sigut modificats localment i que 
// son identics als de la versio de repositori.
// untracked files son els archius que no formen part del repositori


// Indicacions de status:
Changes to be comitted: Archius llestos per pasar de Stage a Commit.
Changes not staged for commit: Diferencies entre els archius locals i els de Stage.



// Status -s mostrara status de una manera mes resumida amb el seguent codi de lletres i colors:
git status -S


    És que esta a stage
M     És que esta per eliminar
??    Significa que no esta dins de stage
A     Significa ADD


Diferencies entre els archius

// mostrar les diferencies que hi han entre els archius
git diff

// Mostra tots els canvis dins la etapa de stage
git diff --staged




Afegir un archiu dins del repositori:

// Hi han diverses formes de adderir un archiu o varis al nostre al repositori.
git add archiu.txt

// Tambe podem afegir tots els archius del directori, tot i que es una mala practica a no ser que 
// tinguesem la seguretat de que tots aquells arxhius han de ser adderits.

git add .

// Tambe podem afegir multiples archius
git add archiu1.txt archiu2.txt archiu3.txt

// Agregar tots els archius segons extencio
git add *.txt




Crear un commit:

// COMMIT significa comprometre
// Passar el stage a commit:
git commit -m "Un misatge exemple: Commit inical"

// Si un archiu de commit es editat localment i es vol afegir a commit

git add arxiu.txt
git commit

//Sens obrira VSCODE i ens demanara que agreguesem un text referencian els canvis.
// Escrivim adal del archiu i guardem
// A la consola ens sortira referenciat el text que em guardat.





Remoure archius o recuperarlos

// Podem remoure archius de un stage, per a lograro hem de entendre el fluxe de treballa que te git.
// Es a dir, em de compendre que al stage s'actualitza a partir dels archius locals de un ordinador,
// Per lo que per a eliminarlo, primer em de eliminar el archiu localment i seguidament pujar
// l'actualitzacio de stage



// pas 1, remoure archiu local
rm archiu.txt

// pas 2, agregar la ordre de eliminar el arxiu de stage
git add archiu.txt



Eliminar o recuper archius


// Per a eliminar seguidament el archiu de la etapa commit
git commit -m "elminant archiu.txt"

// Per eliminar un archiu directament de stage
git rm archiu.txt


// Recuperar un archiu eliminat a la etapa stage:
git restore --staged archiu.txt





Ignorar archius

// .gitignore es un arxiu que ens permet gestionar els archius i directoris dins del projecte per a no pujarlos a Stage. Aquestos es delcaren  linia a linia.

.gitignore


Mostra informacio sobre qui ha fet X commits.

git log


// Per a veure el historial de commit
git log --oneline




Branques del repositori

// Es important asegurar que tenim la zona de trevall neta, sense
// actualitzacions o dependencies pendents al projecte.

// Abans de fer una nova branca es important que status ens mostre el seguent misatge:

git status

On branch main
nothing to commit,working tree clean


//Per saber a quina rama estem
git branch

// Per a crear una nova rama
git checkout -b Nom-de-la-Rama

//Per a moures com un mono de rama en rama
git checkout Nom-de-la-Rama

// Per a unir una rama a main em de asegurarnos de que estem dins de main
git merge Nom-de-la-rama-Que-Volem-Unir-A-Main.




Utilitzar github com a servidor per als nostres repositoris:


 -> Registrarse a www.github.com

 -> Crear un repositori nomes public, sense readme ni res mes que public.

-> Copiar la linia i pegar a la terminal bash:

git remote add origin https:github...

-> executar:
push -u origin main

// Ens demanara el nom de usuari github
// Ens demanara una key, pero no es la pasword del compte github, per accedir a esta clau:

settings -> al final developer settings -> Personal acces tockens -> Generate new token





dijous, 13 de gener del 2022

Log4j: un nou forat de ciberseguretat que posa en risc a milions de empreses.



La vulnerabilitat, identificada com a CVE-2021-44228, va ser descoberta i notificada inicialment per l'equip de seguretat al núvol d'Alibaba el 24 de novembre passat.

La vulnerabilitat és a Apache Log4j, un sistema de registres àmpliament utilitzat pels desenvolupadors d'aplicacions web i servidors basats en Java, “la qual cosa està posant en risc un nombre incalculable d'empreses a possibles ciberatacs de codi remot i l'exposició de la seva informació ”. La decisió en si mateix ha estat qualificada amb un índex de perillositat 10 sobre 10 al sistema de puntuació CVSS estàndard de la indústria. "Això és el pitjor que pot passar", diu Trend Micro.


Log4j és una utilitat de registre basada en Java, i és un dels molts projectes des de Apache Software Foundation. S'utilitza principalment com a eina de depuració. Ha estat implementada en altres llenguatges com: C, C++, C#, Perl, Python, Ruby y Eiffel.

Els serveis de VMware es un dels afectats, posant a escac a tots els servidors i maquines virtuals gestionades des de el seu software. VMware és el nom duna de les eines de virtualització més populars , un estàndard que s'utilitza en el món sencer.

Els investigadors creuen que caldrà aguantar “una llarga espera, probablement anys” abans que tots els artefactes afectats per les vulnerabilitats de Log4j siguin superades.


Actualment podem "solventar" aquesta vulneravilitat vaig un entor de trevall de VCenter seguint els següents passos:

----------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------

// Iniciem una connexió des de una terminal  al servidor amb ssh

ssh root@192.168.1.1

Un cop connectats imprimirà la següent informació:

//root@192.168.1.1's password:

//Last login: Tue Jan 11 12:00:43 2022 from 109.69.96.165

//Connected to service

//

//    * List APIs: "help api list"

//    * List Plugins: "help pi list"

//    * Launch BASH: "shell"


//Activar  el interpret d'ortdres shell

Command> shell.set --enable True
Command> shell

//Activem el interpret d'ordres bash

 chsh -s /bin/bash root 

//Traspassar els arxius mitjançant scp o winSCP.

//executar en ordre

python vc_log4j_mitigator.py 

python vc_log4j_mitigator.py -r


Si tot ha sortit ve, haurem tancat totes les vulnerabilitats presentades per log4j, tot i aixòs cal tindre present que aixos es un simple parche, per lo que es important tornar a sella i revisar la vulnerabilitat en la actualització de les eines o sistema.

//Deixem per defecte el interpret d'ordres a shell

chsh -s /bin/appliancesh root


Seguidament per tal de deixar el sistema en les mateixes condicions inicials cal entrar de nou al menu inicial. 

//Deixem per defecte l'entorn del interpret del servidor.

//root@192.168.1.1's password:

//Last login: Tue Jan 11 12:00:43 2022 from 109.69.96.165

//Connected to service

//

//    * List APIs: "help api list"

//    * List Plugins: "help pi list"

//    * Launch BASH: "shell"

Command> shell.set --enable False

Command> shell

----------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------
Programmes shell:

dimecres, 15 de setembre del 2021

Bases de dades orientades a documents

 



"En el model de base de dades orientat a documents, les dades es guarden en documents individuals i no en taules com en el model relacional."

En els últims anys, i gràcies a l'èxit de NoSQL, les bases de dades documentals han experimentat un gran auge, sobretot, per la seva bona escalabilitat. Un exemple per a aquest tipus de sistema de base de dades és MongoDB.

En aquest model, els documents són la unitat bàsica per a l'emmagatzematge de dades. Aquestes unitats són les que estructuren les dades i no s'han de confondre amb els documents dels programes de processament de text. Aquí, les dades es guarden en els anomenats parells clau-valor, comprenent així, una "clau" i un "valor". Com que no estan definits ni l'estructura ni el nombre de parells, els documents que integren una base de dades orientada a documents poden resultar molt dispars entre si. Cada document és una unitat tancada en si mateixa i establir relacions entre documents no resulta fàcil, però en aquest model no és necessari.

Tecnlogies que treballen amb Bases de dades orientades a documents:

Més informació --> Base de dades

Bases de dades orientades a objectes

 


"El model de base de dades orientat a objectes preveu l'emmagatzematge de les dades juntament amb els seus mètodes d'accés."


En el model orientat a objectes, les dades es guarden en un objecte juntament amb les seves funcions (mètodes) i els atributs que els descriuen més en profunditat. En un sistema de gestió de bases de dades d'objectes, són els mètodes, dipositats en l'objecte juntament amb les dades, els que defineixen com s'accedeix a l'objecte.

Els objectes poden ser complexos i estar compostos per múltiples tipus de dades, són únics dins el sistema de base de dades i s'identifiquen amb un identificador d'objecte (OID en anglès) únic. Com es pot veure a la figura de dalt, els objectes s'agrupen en classes (object category), donant com a resultat una jerarquia de classes. Malgrat l'aparent similitud amb el model jeràrquic, aquí predomina el paradigma orientat a objectes i no existeix cap relació pare-fill fixa. Tot i així, a través de la classe pot definir-se el mètode per a l'accés.

Els avantatges de les bases de dades orientades a objectes destaquen, sobretot, en problemes amb tipus de dades complexos. Aquestes bases de dades treballen, en la seva major part, de forma autònoma sense recórrer a la normalització ia la correspondència d'ID, permetent així emmagatzemar els objectes nous de forma relativament simple i fluïda. No obstant això, les consultes són molt més àgils en un sistema de base de dades relacional. L'escassa popularitat dels sistemes orientats a objectes resulta en una insuficient compatibilitat amb moltes de les aplicacions de base de dades que es fan servir habitualment

Tecnlogies que treballen amb Bases de dades en objectes:



Més informació --> Base de dades

Bases de dades en xarxa

 

"En el model de base de dades en xarxa no governa cap jerarquia fixa i, per tant, són diversos els camins que porten a un mateix destí."


El model en xarxa es va desenvolupar gairebé de forma simultània al relacional, encara que amb el temps seria superat per la competència. A diferència d'el model jeràrquic, aquí els registres o rècords no revelen relacions pare-fill estrictes , sinó que cada registre pot tenir múltiples precedents, el que li dóna la estructura en xarxa del seu nom. Per accedir a un registre tampoc hi ha, per això mateix, un camí únic i invariable.

Avui el model de base de dades en xarxa s'utilitza, sobretot, en els grans ordinadors . En altres camps se segueix confiant en el model jeràrquic (clients d'IBM, sobretot) o s'ha fet el pas cap al model relacional, molt més flexible i fàcil d'utilitzar. Alguns models coneguts de base de dades en xarxa són el UDS de Siemens i el DMS de Sperry Univac. Amb el temps, tots dos fabricants han desenvolupat també interessants formes mixtes entre el model en xarxa i el relacional encara que sense aconseguir arrencar de el tot. Amb tot, encara avui poden trobar aspectes d'aquests intents en el SQL de Siemens. La base de dades orientada a grafs, per la seva estructura reticular, és considerada l'evolució moderna de el model en xarxa.

Tecnlogies que treballen amb Bases de dades en xarxa:
  • UDS (Siemens)
  • DMS (Sperry Univac)



Més informació --> Base de dades

Bases de dades Jeràrquiques

 


"En el model jeràrquic de base de dades les dependències són estrictes."


En les bases de dades jeràrquiques les dependències són inequívoques. Cada registre té només un precedent (Parent-Child Relationships, PCR) a excepció de l'arrel (root), constituint un esquema en arbre com el de dalt. Mentre que cada node "fill", només pot tenir un node "pare", els "pares" poden tenir tants "fills" com vulguin. Atès l'estricte ordenament jeràrquic, els nivells sense relació directa, no interactuen entre si i connectar dos arbres diferents tampoc és fàcil. Per tot això, les estructures de base de dades jeràrquiques són extremadament inflexibles, però molt clares .

Els registres amb fills es diuen records i els que no tenen s'anomenen fulles i són els que solen contenir els documents. Els records serveixen per classificar les fulles . Les consultes a una base de dades jeràrquica arriben als fulls partint des de l'arrel i passant pels diferents records.


Tecnlogies que treballen amb Bases de dades jeràrquiques:



Més informació --> Base de dades

dimarts, 14 de setembre del 2021

Bases de dades relacionals


"El model relacional de base de dades es basa en taules i avui s'ha consolidat com
estàndard per a les bases de dades."

El model relacional treballa amb taules independents que determinen la localització de les dades i les seves connexions. Aquestes dades conformen un registre (a la imatge, una fila o "tupla") i es guarden en columnes com a atributs. La relació és el que resulta dels atributs interrelacionats. Per identificar inequívocament un registre és elemental la clau primària , que normalment es defineix com el primer atribut (A1) i que no pot canviar-se. Dit d'una altra manera, aquesta clau primària o ID, defineix la posició exacta de l'registre amb tots els atributs.

Tecnlogies que treballen amb Bases de dades relacionals:

Més informació --> Base de dades

dissabte, 24 d’abril del 2021

Encoders absoluts, quins son i com funcionen?

 



Els encoders de valor absolut subministren un codi binari que es correspon amb la posició en què es troba l'eix.

És a dir, llegeix la posició del disc, no la transició d'una posició a la següent (com passa amb els encoders incrementals). Per tant, aquests encoders no perden la posició en què es troben encara es moguin quan no hi ha tensió d'alimentació.

Aquest fet suposa un gran avantatge ja que no cal posicionar la màquina en l'origen després d'una falta de tensió d'alimentació.


Principi de funcionament:

Un emissor de llum infraroja emet un feix que travessa una màscara i el disc on està serigrafiat el codi binari en pistes circulars concèntriques a l'eix.
Quan el disc (que està fixat a l'eix de l'encoder) gira, una matriu de foto-transistors rep llums i ombres produïdes quan les pistes serigrafiades en el disc interrompen el feix de llum emès pel díode emissor.





En el croquis anterior podem veure el principi de funcionament de l'encoder absolut. Com es pot apreciar, la llum de l'díode emissor d'infrarojos, travessa el disc i la màscara i incideix sobre els foto-transistors (n'hi ha tants, com bits té el codi binari que fa servir l'encoder).


Representacio de un disc:




Com es pot observar, el disc està dividit en pistes circulars concèntriques. Cada pista (començant per la més perifèrica i cap al centre del disc) correspon a un bit d'el codi binari que s'estigui fent servir.

Els sectors en negre produeixen ombra en el Foto-Transistor corresponent i el circuit electrònic subministra un "1" lògic en el bit en qüestió.

Els sectors en blanc deixen passar la llum a l'Foto-Transistor i l'electrònica subministra un "0" lògic per al bit a què correspon.

Encoders absoluts mono-volta i multi-voltes

Fins ara hem estat veient que el encoder absolut té un disc que gira solidari amb l'eix. Però què passa quan l'Eix arriba a la fi de la volta de 360º ?.

Per contestar aquesta pregunta cal tenir en compte que, pel que fa a aquest punt, hi ha dos tipus d'encoders:
  • Encoders mono-volta
L'encoder subministra, a cada volta, el nombre de lectures (passos) que tingui el disc que porta al seu interior. Quan nafra a la fi de la volta, torna a començar la lectura pel principi. Per exemple, suposem que el encoder porta un disc de 360 passos, llavors la seqüència que subministra és la següent:


És a dir, el receptor del senyal de l'encoder sap quina és la posició del disc en cada volta, però no sap en què tornada està l'eix o quantes voltes ha donat.

Aquest tipus d'encoders s'usa quan l'eix de l'encoder no va a donar més d'una volta o quan es vol controlar l'angle de gir d'una peça (per exemple una antena orientable 360º). 

 

  • Encoders multi-voltes
Aquest tipus d'encoders permet saber, no només en quina posició està l'eix sinó també quantes voltes ha donat.
Per aconseguir això, l'encoder porta en el seu interior, a més de el disc que indica el nombre de passos per volta, altres discos (amb diferent relació mecànica) que són els que comptabilitzen el nombre de voltes de l'eix.

Aquests discos auxiliars poden ser un, dos o tres i també van codificats amb el mateix codi binari que el disc general.

Vegem un croquis il·lustratiu:


Quan un encoder multi-volta sigui de 16 voltes portarà només un disc auxiliar. Aquest disc donarà una volta completa cada 16 voltes del disc principal (16 voltes de l'eix).

Quan un encoder multi-volta de 256 voltes portarà dos discos auxiliars. Cada 16 voltes del disc principal (16 voltes de l'eix), el primer disc auxiliar donarà una volta i cada 16 voltes del primer disc auxiliar donarà una volta el segon disc auxiliar. (16x16 = 256) 

Quan un encoder multi-volta sigui de 4.096 voltes portarà tres discos auxiliars. Cada 16 voltes d'un disc, el següent dóna una volta. (16 x 16 x 16 = 4.096)

Per tant, sabent el nombre de passos per volta del disc principal, podem saber el nombre màxim de passos en tot el recorregut.

Exemple 1 :

Tenim un disc de 1.024 passos / tornada muntat en un encoder multi-volta de 4.096 voltes. Quin és el nombre de lectures (passos) total que donarà el encoder?

1.024 x 4.096 = 4.194.304 passos


Exemple 2:

Tenim un disc de 8.192 passos / tornada muntat en un encoder multi-volta de 4.096 voltes. Quin és el nombre de lectures (passos) total que donarà el encoder?

8.192 x 4.096 = 33.554.432 passos

 

Així doncs, sabent les necessitats de resolució que necessitem en una aplicació determinada es pot triar l'encoder amb els passos per volta i el nombre de voltes adequats per obtenir la solució òptima.


Exemple:  
Suposem que anem a controlar la posició d'un eix amb un recorregut útil màxim de 1.000 mm, i volem una resolució i precisió de 0,001 mm (mil·lèsima de mm.).

D'altra banda la relació mecànica entre la rotació de l'eix de l'encoder i el desplaçament lineal de la peça és de 10 voltes de l'eix de l'encoder per cada 2 mil·límetres de desplaçament lineal de la peça mòbil (10 voltes = 2.000 mil·lèsimes)



Així doncs, es dedueix que necessitem un encoder multi-voltes de 4.096 passos / tornada i de més de 5.000 voltes (8.192 voltes) ja que el encoder dóna 5.000 voltes perquè la peça mòbil recorri els 1.000 mm (1m) i com té una resolució de 4.096 lectures per volta, donarà a la fi de l'recorregut:

5.000 voltes x 4.096 passos = 20.480.000 lectures

Per tant, per llegir la posició correcta (1.000.000 mil·lèsimes de mm.) S'ha de realitzar la següent operació:

Si 20.480.000 lectures són  1.000.000 mil·lèsimes de mm
1 lectura serà  X  
 
Així doncs X = 0,0488281

 

Per tant la posició real (PR) de la peça mòbil es calcula:

 PR = Lectura * 0,0488281 mil·lèsimes mm


Aquesta és l'operació que ha de fer l'equip que llegeixi el senyal de l'encoder (autòmat programable, CNC, etc.).

Comprovem, amb un exemple d'una cota, que la resolució que surt és de mil·lèsima de mm:

En un moment determinat, el controlador ha llegit la xifra 12.700.827. Llavors si realitzem la fórmula per calcular la posició real de la Peça Mòbil, tenim:

 
PR = 12.700.827 * 0,0488281 = 620.157,25 mil·lèsimes de mm.


Si menyspreem els decimals (0,25) tindrem, tan sols, un error en la posició de 25  mil·lèsimes de mm.

Encoders, què són i com funciona?




Què és un encoder?

En poques paraules, un encoder és un dispositiu de detecció que proporciona una resposta. Els Encoders converteixen el moviment en un senyal elèctric que pot ser llegida per algun tipus de dispositiu de control en un sistema de control de moviment, com ara un taulell o PLC.


Com funciona un encoder?

Els Encoders utilitzen diferents tipus de tecnologies per crear un senyal, incloent: mecànica, magnètic, òptic i de resistència òptica és la més comuna. En detecció òptica, l'encoder proporciona informació basada en la interrupció de la llum.


Diferencies entre encoders absolut i els encoders incrementals:

Els encoders poden produir senyal ja sigui incrementals o absolutes. Les senyals incrementals no indiquen la posició específica, només que s'ha mogut. Els Encoders absoluts, d'altra banda, utilitzen una "paraula" diferent per a cada posició, el que significa que un encoder absolut proporciona tant la indicació que s'ha mogut i una indicació de la posició absoluta de l'encoder.


Diferents tipus de encoders:

 --> Encoder lineal absolut magnetic






Més informacio: