« Novar 33 » : différence entre les versions

De Kernel Fablab Lannion
Aucun résumé des modifications
 
(52 versions intermédiaires par 4 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 
[[File:Novar33.jpg|400px|droite]]
== Descriptif de la machine ==
== Descriptif de la machine ==
Numéro de Série : 2290104
Numéro de Série : 2290104
== Documentation ==
== Documentation ==
[[:File:F51400.NOVAR33.1003.FR.pdf]]
[[:File:F51400.NOVAR33.1003.FR.pdf|manuel]]
 
== Exemple d'utilisation ==
== Exemple d'utilisation ==


Ligne 13 : Ligne 14 :


Récupération du contenu de la disquette
Récupération du contenu de la disquette
  sudo dd if=/dev/fd0 of=/tmp/novar33.bin
  sudo dd if=/dev/fd0 of=/tmp/nomfichier.bin
sudo dd if=/dev/fd0 of=/tmp/novar33-format.bin
sudo dd if=/dev/fd0 of=/tmp/novar33-4bank-3lignes.bin


Edition du fichier binaire
Edition du fichier binaire
  sudo apt-get install ghex
  sudo apt-get install ghex
  sudo ghex2 /tmp/novar33.bin
  sudo ghex2 /tmp/nomfichier.bin


Ecriture de la disuette
Ecriture de la disuette
  sudo dd of=/dev/fd0 if=novar33-4bank-3lignes-modif2.bin
  sudo dd of=/dev/fd0 if=nomfichier.bin
 
Effacer la disquette
sudo dd if=/dev/zero of=/dev/fd0 bs=512 conv=notrunc


=== Notes d'édition ===
=== Notes d'édition ===
Ligne 31 : Ligne 33 :
*# Dx
*# Dx
*# DY
*# DY
* '''Bloc d'octets des variables inversés!''' pour avoir la valeur décimale 1853 il faut avoir "3d 07" et non "07 3d"
* '''Encodage en Little Endian: Les bloc d'octets sont inversés!''' pour avoir la valeur décimale 1853 il faut avoir "3d 07" et non "07 3d"
* Pas de déplacement effectif si aucun magasin d'indiqué
 
=== Adresses ===
=== Adresses ===
Début des bank :
04000 bank 1
16000 bank 2
28000 bank 3
3a000 bank 4
 
à partir de 3A208 (programme)
position magasin 03600,15600 ...39608 >>> du coup les @ des banks ci-dessus ne sont peuetre pas bonne ...
type magasin 03906,15906 ...
param ... 28032 à 2808C ...3A042 à 3A098
offset pour l’écriture des lignes d'un programme :
  208
offset pour l’écriture des Magasins :
  ??
offset pour l’écriture des paramètres machine :
  42 (à vérifier)
autres offset  :
  ??
=== Modifier la disquette ===
fabmanager@fab1:~/Documents/Novar30$ sudo python
[sudo] password for fabmanager:
Python 2.6.5 (r265:79063, Oct  1 2012, 22:07:21)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> f = open('/dev/fd0','rw+')
>>> f.seek(0x3a208,0)
>>> f.read(8)
'\x00\x00\x00\x00\x01\x00\x02\x00'
>>> f.seek(0x3a208,0)
>>> f.write('\x00\x00\x00\x00\x01\x00\x02\x99')
>>> f.seek(0x3a208,0)
>>> f.read(8)
'\x00\x00\x00\x00\x01\x00\x02\x99'
>>> f.close()
[[Category:AnciennesMachines]]
=== MAPPING de la disquette ===
'''0x4000 bank 1'''
=== <u>Début des Paramètres Machine Précidot</u> ===
:* @bank + 0x000 Param 01
:* @bank + 0x099 Param 44
=== <u>Début du programme Précidot</u> ===
:* @bank + 0x208 Position x, y du premier point de référence
:* @bank + 0x210 contrôle du point de Référence
:* @bank + 0x218 1ère boucle de dépose répétée 1 fois
:* @bank + 0x220 Début des Dépôt  sur les point aux coordonnées X,Y
:* @bank + 0x2DF Fin des dépôt
:* @bank + 0x2EF Fin de Programme Precidot
'''0x39600 bank4P'''
=== <u>Début des Magasins Novar</u> ===
:* @bank + 0x606 Position x, y du premier rang de référence du magasin 01
:* @bank + 0x6E7 Fin des magasin à Bande
:* @bank + 0x6EC Position x, y du premier rang de référence magasin à vibration 41
'''0x3A000 bank 4'''
=== <u> Début des Paramètres Machine Novar</u> ===
:* @bank + 0x042 Param 01
:* @bank + 0x099 Param 44
:* @bank + 0x032  Nb de Ligne du programme
:* @bank + 0x035  Fin du Nb de Ligne
:* @bank + 0x036  Nb de Ligne de Positions Mag
:* @bank + 0x038  Fin du Nb de Ligne
=== <u> Début du Programme Novar</u> ===


  04206 bank 1
:* @bank + 0x208 REF
  16206 bank 2
:* @bank + 0x212 Controle de Ref
28206 bank 3
:* @bank + 0x218 Prise du 1er Outil
  3a206 bank 4
:* @bank + 0x222 Vitesse
3FFC param system ?
:* @bank + 0x228 Début boucle
:* @bank + 0x230 à @bank + 0x24F placement composant
:* @bank + 0x250 Fin 1er Boucle
:* @bank + 0x258 Depose
:* @bank + 0x260 Prise nouvel Outil
:* @bank + 0x268 Vitesse
:* @bank + 0x270 Début 2eme boucle
:* @bank + 0x278 placement du composant
:* @bank + 0x280 Fin 2eme Boucle
:* @bank + 0x288 Depose
:* @bank + 0x290 Prise nouvel Outil
:* @bank + 0x298 Vitesse
:* @bank + 0x2A0 Début 3eme boucle
:* @bank + 0x2A8 à @bank + 0x2B7 placement du composant
:* @bank + 0x280 Fin 3eme Boucle fin de programme

Version actuelle datée du 15 octobre 2020 à 09:43

Novar33.jpg

Descriptif de la machine

Numéro de Série : 2290104

Documentation

manuel

Exemple d'utilisation

Maintenance / Etat

Analyse de la disquette

Récupération du contenu d'une disquette créée par la nova

Récupération du contenu de la disquette

sudo dd if=/dev/fd0 of=/tmp/nomfichier.bin

Edition du fichier binaire

sudo apt-get install ghex
sudo ghex2 /tmp/nomfichier.bin

Ecriture de la disuette

sudo dd of=/dev/fd0 if=nomfichier.bin

Effacer la disquette

sudo dd if=/dev/zero of=/dev/fd0 bs=512 conv=notrunc

Notes d'édition

  • La modification d'un parametre d'une ligne existante est bien répercuté
  • variables sur 16bit [confirmations ?]
    1. Magasin
    2. Rotation
    3. Dx
    4. DY
  • Encodage en Little Endian: Les bloc d'octets sont inversés! pour avoir la valeur décimale 1853 il faut avoir "3d 07" et non "07 3d"
  • Pas de déplacement effectif si aucun magasin d'indiqué

Adresses

Début des bank :
04000 bank 1
16000 bank 2
28000 bank 3
3a000 bank 4
  

à partir de 3A208 (programme)
position magasin 03600,15600 ...39608 >>> du coup les @ des banks ci-dessus ne sont peuetre pas bonne ...
type magasin 03906,15906 ...
param ... 28032 à 2808C ...3A042 à 3A098


offset pour l’écriture des lignes d'un programme :
 208
offset pour l’écriture des Magasins :
 ??
offset pour l’écriture des paramètres machine :
 42 (à vérifier)
autres offset  :
 ??

Modifier la disquette

fabmanager@fab1:~/Documents/Novar30$ sudo python
[sudo] password for fabmanager: 
Python 2.6.5 (r265:79063, Oct  1 2012, 22:07:21) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> f = open('/dev/fd0','rw+')
>>> f.seek(0x3a208,0)
>>> f.read(8)
'\x00\x00\x00\x00\x01\x00\x02\x00'
>>> f.seek(0x3a208,0)
>>> f.write('\x00\x00\x00\x00\x01\x00\x02\x99')
>>> f.seek(0x3a208,0)
>>> f.read(8)
'\x00\x00\x00\x00\x01\x00\x02\x99'
>>> f.close()

MAPPING de la disquette

0x4000 bank 1

=== Début des Paramètres Machine Précidot ===
  • @bank + 0x000 Param 01
  • @bank + 0x099 Param 44


=== Début du programme Précidot ===
  • @bank + 0x208 Position x, y du premier point de référence
  • @bank + 0x210 contrôle du point de Référence
  • @bank + 0x218 1ère boucle de dépose répétée 1 fois
  • @bank + 0x220 Début des Dépôt sur les point aux coordonnées X,Y
  • @bank + 0x2DF Fin des dépôt
  • @bank + 0x2EF Fin de Programme Precidot


0x39600 bank4P

=== Début des Magasins Novar ===
  • @bank + 0x606 Position x, y du premier rang de référence du magasin 01
  • @bank + 0x6E7 Fin des magasin à Bande
  • @bank + 0x6EC Position x, y du premier rang de référence magasin à vibration 41

0x3A000 bank 4

===  Début des Paramètres Machine Novar ===
  • @bank + 0x042 Param 01
  • @bank + 0x099 Param 44


  • @bank + 0x032 Nb de Ligne du programme
  • @bank + 0x035 Fin du Nb de Ligne
  • @bank + 0x036 Nb de Ligne de Positions Mag
  • @bank + 0x038 Fin du Nb de Ligne
===  Début du Programme Novar ===
  • @bank + 0x208 REF
  • @bank + 0x212 Controle de Ref
  • @bank + 0x218 Prise du 1er Outil
  • @bank + 0x222 Vitesse
  • @bank + 0x228 Début boucle
  • @bank + 0x230 à @bank + 0x24F placement composant
  • @bank + 0x250 Fin 1er Boucle
  • @bank + 0x258 Depose
  • @bank + 0x260 Prise nouvel Outil
  • @bank + 0x268 Vitesse
  • @bank + 0x270 Début 2eme boucle
  • @bank + 0x278 placement du composant
  • @bank + 0x280 Fin 2eme Boucle
  • @bank + 0x288 Depose
  • @bank + 0x290 Prise nouvel Outil
  • @bank + 0x298 Vitesse
  • @bank + 0x2A0 Début 3eme boucle
  • @bank + 0x2A8 à @bank + 0x2B7 placement du composant
  • @bank + 0x280 Fin 3eme Boucle fin de programme