MANUALE Arduino Keyer K3NG
Scarica => Manuale originale Keyer K3NG ( in lingua Olandese by Cees v.d.Laan, PA3CVI)
Traduzione in Italiano , grazie al traduttore Google, da IT9SAJ Carmelo => http://it9saj.altervista.org
IMPORTANTE
Non mi prendo nessuna responsabilità del contenuto e di eventuali errori del presente manuale, compreso quello scaricato come pdf.
2 Introduzione
5 Specifiche Arduino MEGA 2560
7 Arduino
9 Installazione dell'IDE Arduino
10 Lavorare con il programma Arduino IDE
13 Creazione e avvio del programma
17 Formattazione dei file keyer K3NGW
18 Mettere i file al posto giusto
20 Il K3NG Arduino MEGA 2560 a montaggio superficiale
20 Iniziare a costruire il keyer K3NG
24 Caricamento dei dati dal keyer K3NG nell'IDE di Arduino
26 Regolare il programma base K3NG
29 Interno chiave e altoparlante
30 Collegamento della tastiera
34 Collegamento al proprio ricetrasmettitore
36 Decodificatore CW DSP Geortz
43 Allegati, keyer_pin_settings e keyer_features_and_options.h
Tastiera Arduino 2560MEGA K3NG CW pagina 2
Tastiera CW Arduino
Un Arduino è un computer piccolo, relativamente economico e programmabile che può fare molto scrivendo il codice giusto. Un progetto Arduino è consigliato a chiunque sia interessato alla programmazione o ad armeggiare con l'elettronica. Puoi scegliere tra un'ampia varietà di progetti, ma io, come radioamatore, ho scelto il K3NG Arduino CW-Keyer. Con grande piacere ho portato a termine con successo questo progetto. I miei ringraziamenti a Ralph, PA1RB e Anthony Good, K3NG, non sarebbe stato certamente possibile senza il loro aiuto!
Forse questa guida può stimolare a lavorare con i progetti Arduino, è destinata al principiante con alcune conoscenze di base di elettronica. Acquisirai gradualmente la conoscenza di come gestire i microcontrollori e la programmazione associata. Si tratta di un progetto particolarmente divertente per le emittenti radiofoniche e per i radioamatori.
K3NG è il progettista dell'Arduino CW-Keyer, basato sul microcontrollore Arduino UNO.
Per i più avanzati, c'è un'ampia descrizione sul suo sito per la sua costruzione.
Tutta la sua programmazione è di tipo "open source", che offre la possibilità di apportare modifiche al programma a propria scelta.
https://blog.radioartisan.com/arduino-cw-keyer/
Dato che ho l'Arduino MEGA 2560, fig.1, sono andato alla ricerca di un manuale basato su quest'ultimo. Dopo qualche sforzo ho finalmente trovato un sito di KF4BZT con il quale pensavo di poter fare qualcosa da principiante.
La differenza tra UNO e MEGA sta in una diversa assegnazione dei pin e KF4BZT lo adatta dalla descrizione di base di K3NG.
Figura 1, di Arduino MEGA 2560
Tastiera Arduino 2560MEGA K3NG CW pagina 3
Nel manuale di KF4BZT il CW-Keyer è costruito passo dopo passo, utilizzando l'Arduino MEGA 2560, lardellato di molte immagini (non) chiare.
https://kf4bzt.wordpress.com/2015/08/06/arduino-cw-keyer-project/
Allora perché questo manuale si chiede. Bene, io da manichino sapevo poco del fenomeno Arduino e presto mi sono bloccato nella sua descrizione. Da un lato una spiegazione dettagliata, dall'altro mi sfugge la fase iniziale del "come comincio". Inoltre, è piuttosto sciatto sul suo sito con alcuni schemi, che contengono errori.
Prima di tutto, cosa offre questo keyer:
1.1 Caratteristiche del manipolatore K3NG CW.
Velocità CW regolabile da 1 a 999 WPM.
Fino a sei linee di tasti del trasmettitore selezionabili.
Programmazione e interfacciamento tramite porta USB ("interfaccia a riga di comando")
Interfaccia tastiera USB o PS2 per il funzionamento della tastiera CW senza computer.
Logging e Contest Program Interfaccia tramite emulazione del protocollo di interfaccia K1EL Winkey 1.0 e 2.0.
Versioni PTT opzionali con piombo, coda e tempi di sospensione regolabili.
Display LCD opzionale: modalità classica a 4 bit, display RGB Adafruit I2C o display LCD YourDuino I2C.
Fino a 12 memorie con macro.
Numeri seriali.
Tastiera CW (tramite un programma terminal server come Putty o il programma Arduino Serial).
Potenziometro velocità, optional - velocità regolabile anche con comandi
QRSS e HSCW.
Modalità Faro/Volpe.
Lambico A e B.
Modalità tasto diretto.
Modalità definitiva.
Modalità bug.
CMOS Super Keyer Iambic B Timing.
Pagaia inversa.
Modalità Hellschreiber (invia tastiera, macro di memoria, beacon)
Tempi di Farnsworth.
Tono laterale a frequenza regolabile.
Disattiva l'uscita sidetone/sidetone high/low per disabilitare l'oscillatore audio.
Modalità di comando per utilizzare la paletta per modificare le impostazioni, i promemoria dei programmi, ecc.
Compensazione chiavi.
Dah a questa regolazione del rapporto.
Imposta.
Esercizio di ricezione del nominativo.
Invia esercizio.
Impila la memoria.
AUTOSPAZIO.
Personalizzazione dello spazio delle parole.
Simboli preconfigurati e personalizzati.
Memorizzazione persistente della maggior parte delle impostazioni.
Design del codice modulare che consente la selezione delle funzioni e una facile modifica del codice.
Supporto per caratteri non inglesi.
Decodificatore di ricezione CW (SPERIMENTALE).
Coefficiente di velocità della manopola rotante.
Modalità risparmio.
Supporto per mouse USB.
Supporto per anello LED Mayhew
Pratica di spedizione dell'alfabeto.
QLF / Emulazione chiave diretta (NOVITÀ).
Interfaccia USB Keyboard HID (Human Interface Device) (Keyer = tastiera per il tuo computer) (NUOVO).
Tastiera Arduino 2560MEGA K3NG CW pagina 4
Di seguito sono riportati i pin digitali / PWM / analogici disponibili su tre Arduino comunemente usati:
Pin Arduino Nano.
Pin I/O digitali 14
Pin PWM 6
Pin I/O analogici 8
Pin di Arduino Yun.
Pin I/O digitali 20
Pin PWM 7
Pin I/O analogici 12
Arduino Mega 2560 Pin.
Pin I/O digitali 54
Pin PWM 15
Pin I/O analogici 16
Arduino UNO e Mega 2560.
Il vantaggio di Arduino Mega 2560 è che ha 256 KB di memoria flash (di cui 8 KB utilizzati dal boot loader). Questo ti dà lo spazio per tutte le possibilità offerte dal firmware.
Di seguito puoi vedere i pin Digital / PWM / Analog disponibili su Arduino MEGA 2560. Il Mega ti consente di fare molte più connessioni, più connessioni meglio è.
Non tutti i pin verranno utilizzati per questo, poiché ci sono modi per accoppiare le connessioni insieme attraverso un'unica linea, come la messa a terra e la linea da 5 volt per alimentare il circuito. Di seguito è riportato un confronto con Arduino UNO.
Pin Arduino Nano.
Pin I/O digitali 14
Pin PWM 6
Pin I/O analogici 8
Arduino Mega 2560 Pin.
Pin I/O digitali 54
Pin PWM 15
Pin I/O analogici 16
Tastiera Arduino 2560MEGA K3NG CW pagina 5
1.2 Specifiche di ARDUINO MEGA 2560.
Importanti sono i pin digitali e analogici e la velocità di clock (decodifica CW).
Specifiche tecniche:
Microcontrollore ATmega2560
Tensione di esercizio 5V
Tensione di ingresso (consigliata) 7-12V
Tensione di ingresso (limite) 6-20V
Pin I/O digitali 54 (di cui 15 con uscita PWM)
Pin di ingresso analogico 16
Corrente CC per pin I/O 20 mA
Corrente CC per pin 3,3 V 50 mA
Memoria flash 256 KB di cui 8 KB utilizzati dal bootloader
SRAM 8 KB
EEPROM 4KB
Velocità di clock 16 MHz
Lunghezza 101,52 mm
Larghezza 53,3 mm
Peso 37 g
Tastiera Arduino 2560MEGA K3NG CW pagina 6
Come puoi vedere sotto, fig.2, c'è una sezione digitale separata che inizia con il pin 22 fino al pin 53. La versione del pin analogico, in basso a sinistra, è etichettata da A0 a A15. L'alimentazione è sul pin 5 Volt con, tra l'altro, due pin di massa (GND).
Figura 2, Di Arduino MEGA 2560
Tastiera Arduino 2560MEGA K3NG CW pagina 7
1.3 Arduino Basato su un ingresso, un circuito Arduino può eseguire azioni indipendenti emettendo segnali di uscita digitali e analogici.
In questo caso, puoi utilizzare un microcontrollore Arduino MEGA 2560 dei molti tipi di microcontrollori Arduino per controllare un ricetrasmettitore con un tasto Morse o una tastiera, puoi anche rendere visibili i caratteri Morse come testo su un display. L'Arduino Mega 2560, con il chip Atmega 2560, ha una memoria programmabile di 256 KB e 70 connessioni programmabili.
1.4 Le parti più fondamentali.
Di cosa hai bisogno inizialmente per questo:
a. Una cosiddetta breadboard, fig.3a
Questo progetto richiede 2 breadboard. Nella figura 3b puoi vedere come sono disposti i collegamenti sotto la breadboard.
Figura 3a, parte anteriore della breadboard
Figura 3b, retro della breadboard
Tastiera Arduino 2560MEGA K3NG CW pagina 8
b. Fili di collegamento, non ordinarne troppo pochi, inoltre sono relativamente economici, fig.4.
Figura 4, fili di collegamento
c. Inoltre, ovviamente, tutti i componenti comuni inclusi nei circuiti, vedere il capitolo 11, elenco dei componenti.
Tastiera Arduino 2560MEGA K3NG CW pagina 9
- Installazione dell'IDE Arduino 1.8.5
Arduino IDE è un programma che ti permette di comunicare tra il tuo PC e il microcontrollore e di caricare il software necessario sul microprocessore. Quindi scaricherai prima questo programma.
Crea un file da qualche parte sul tuo Hard Drive, fig.5, con ad esempio il nome: Cartella di download temporanea K3NG e scarica il seguente file zip:
https://www.arduino.cc/en/Principale/Software
Quindi, crea una nuova cartella chiamata: C:/Arduino e copia il contenuto del file arduino-1.8.5 dalla cartella di download temporaneo nella cartella Arduino, fig.6.
Figura 6, il contenuto di arduino-1.8.5
Ora avvia il programma con il file Arduino.exe.
Questo per quanto riguarda l'installazione dell'IDE di Arduino.
Tastiera Arduino 2560MEGA K3NG CW pagina 10
- Lavorare con il programma Arduino IDE.
È giunto il momento di collegare la porta USB del tuo Arduino MEGA 2560 alla porta USB del tuo computer.
Avvia Arduino IDE e ad esempio apparirà una finestra Arduino simile, fig.7.
3.1 Configurazione dell'IDE Arduino
Figura 7, Arduino, una possibile schermata iniziale.
Per prima cosa scegli le seguenti opzioni, Fig. 8 e 9 da Strumenti.
Da Strumenti selezionare Arduino Mega, fig.8
Figura 8, ATmega2560
Tastiera Arduino 2560MEGA K3NG CW pagina 11
Una porta è solitamente già determinata da Windows 10, fig.9. Se le cose continuano a non funzionare, controlla in Gestione dispositivi se Arduino è collegato alla porta USB corretta, fig.10. Puoi farlo tramite: Pannello di controllo ˃ Gestione dispositivi, quindi inserisci il numero di porta corretto. Ovviamente puoi assegnare una porta diversa come nell'esempio seguente.
Figura 9, Assegnazione del numero di porta
Figura 10, Gestione dispositivi
Tastiera Arduino 2560MEGA K3NG CW pagina 12
- Schizzo lampeggiante.
Prima di iniziare con lo sketch (programma) K3NG, è consigliabile caricare prima lo sketch Blink. Arduino ha fornito una serie di programmi utili per questo in: Esempi. Con Blink puoi quindi verificare se anche Arduino MEGA funziona correttamente e potrebbero volerci solo 10 minuti. Ora disconnettiti dal tuo PC.
NB. Non è subito obbligatorio utilizzare l'alimentatore esterno (7-12 Volt DC), ma offre un vantaggio con circuiti più grandi e l'uso di un display, in modo che il funzionamento diventi più stabile. L'alimentazione tramite la connessione USB viene quindi automaticamente disattivata, ma l'alimentazione interna dell'Arduino rimane di 5 Volt.
4.1 Configurazione.
La Fig. 11 di seguito mostra la semplice configurazione di Arduino Mega sulla breadboard.
Fai attenzione a come posizioni le parti.
Sulla maggior parte dei LED, il cavo più lungo è il “ Catodo – “ (lato diritto).
Figura 11, Configurazione Blink
Figura 11, Configurazione vuota
Quando ti connetti alla breadboard, cerca di essere concentrato e di non avere fretta. È molto facile fare un errore. Se non stai attento, presto sarai pronto per il tuo prossimo Arduino MEGA 2560, come è successo a me.
Tastiera Arduino 2560MEGA K3NG CW pagina 13
4.2 Creazione e avvio del programma.
Prima di tutto, questo manuale non vuole darti una spiegazione del linguaggio di programmazione, ma con un piccolo sforzo puoi trovare abbastanza su internet per capire approssimativamente come funzionano i programmi. Inoltre, alcuni compiti contengono righe di commento con una spiegazione.
Avvia Arduino IDE e ora carica lo sketch Blink, fig.12.
Figura 12, Selezione di Blink: Esempi 01.Nozioni di base ˃ Blink
Una chiara spiegazione di questo programma può essere trovata su:
https://www.arduino.cc/en/Tutorial-0007/BlinkingLED
Tastiera Arduino 2560MEGA K3NG CW pagina 14
Il programma Blink apparirà ora nella finestra dell'IDE di Arduino. Nell'esempio seguente, Fig. 13, la variabile pin è impostata a 10, secondo la disposizione di Fig.10.
Qualsiasi cosa tra: /* …….. */ viene letto come testo e non compilato.
Anche le righe precedenti: // non vengono compilate.
Aggiungi la riga: int LedPin = 10;
/*
Blink
Zet de led aan en herhaalt dit iedere seconde.
Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
the correct LED pin independent of which board is used.
If you want to know what pin the on-board LED is connected to on your Arduino
model, check the Technical Specs of your board at:
https://www.arduino.cc/en/Main/Products
modified 8 May 2014 by Scott Fitzgerald
modified 2 Sep 2016 by Arturo Guadalupi
modified 8 Sep 2016 by Colby Newman
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/Blink
*/
int led = 10;
// De setup stopt pas als je de reset knop op het Arduino bordje indrukt.
void setup() {
// initialiseer digital pin als output.
pinMode(LED_BUILTIN, OUTPUT);
}
// met loop herhaal je het programma.
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // zet de LED aan (HIGH voltage aan)
delay(1000); // wacht een seconde
digitalWrite(LED_BUILTIN, LOW); // zet de LED uit met LOW
delay(1000); // wacht een seconde
Figura 13, il programma Blink
Se tutto è corretto sulla breadboard, collega la porta USB della breadboard al PC.
Tastiera Arduino 2560MEGA K3NG CW pagina 15
Cliccare sull'icona “V”, fig.14, per compilare il programma. Se ricevi un messaggio di errore, hai commesso un errore di battitura nel programma.
Figura 14, Compilazione.
Quindi fare clic sull'icona "freccia" per caricare il programma su Arduino, fig.15.
Figura 15, caricamento
Se non ricevi nemmeno un messaggio di errore durante il caricamento, il LED si accende e si spegne agli intervalli di tempo programmati. Quindi, hai completato con successo il tuo primo esperimento.
Successivamente, puoi iniziare con il progetto "reale". La struttura è descritta passo dopo passo per ridurre il rischio di errori.
Salvare i tuoi programmi di disegno: vai su File ˃ Preferenze fig.16 e 16a e salva i tuoi schizzi in una cartella omonima.
Non dimenticare di fare clic su OK.
Figura 16, Cartella di salvataggio dei file
Figura 16a, Preferenze
Tastiera Arduino 2560MEGA K3NG CW pagina 16
- Keyer K3NG CW, UNO
Di seguito è riportato lo schema originale, fig.17, del keyer Arduino K3NG CW basato su UNO e può essere trovato sotto:
In generale, questo schema viene utilizzato in questo manuale, ma con un'assegnazione delle porte modificata per il MEGA 2560 e un'aggiunta per un collegamento display e tastiera PS2.
Figura 17, schema di base K3NG
Si noti che tutti i C utilizzati possono essere condensatori a disco ceramico, quindi senza polarità
Tastiera Arduino 2560MEGA K3NG CW pagina 17
- Formatta i file del keyer K3NG CW.
La struttura della mappa è molto importante per il corretto funzionamento del progetto e purtroppo su internet c'è poco da trovare per questo motivo mostro di seguito, con l'aiuto di un organigramma, fig.18, come impostare Arduino struttura.
I rettangoli gialli mostrano le cartelle ei rettangoli blu i file associati.
Organigramma del keyer Arduino K3NG
Figura 18, Organigramma di Arduino K3NG
Crea una nuova cartella chiamata: k3ng_keyer sotto C/:
Tastiera Arduino 2560MEGA K3NG CW pagina 18
Per il keyer K3NG è necessario scaricare il file zip sottostante e inserirlo nella cartella di download temporaneo. Il passaggio intermedio di inserirlo prima in una cartella temporanea sembra un po' macchinoso, ma offre il vantaggio di avere tutti i file di base rapidamente a portata di mano durante una reinstallazione.
https://github.com/k3ng/k3ng_cw_keyer
Figura 19, cartella di download temporanea
6.1 Mettere i file nel posto giusto.
Supponendo che la posizione dell'IDE Arduino, dal progetto Blink, sia ancora nello stesso posto, procedere come segue, secondo l'organigramma:
Vai alla cartella delle librerie tramite:
Cartella di download temporanea ˃ k3ng_cw_keyer-master ˃ librerie
Copiare la cartella K3NG_PS2Keyboard e Goertzel da questa libreria, fig.20 e incollarla nella cartella della libreria Arduino, fig.20a.
Figura 20, cartella delle librerie
Figura 20a, mappa K3NG_PS2Keyboard in Goertzel
Tastiera Arduino 2560MEGA K3NG CW pagina 19
Per chiarire, la mappa della tastiera PS2 verrà aggiunta alla libreria, poiché in seguito collegherai la tua tastiera e Goertzel per decodificare Morse sul display. In questo modo, Arduino IDE può trovare il file necessario ed elaborarlo ulteriormente. (Grazie per l'aiuto di Fred, VK2EFL).
Quando inizierai a creare il programma keyer K3NG, nel prossimo capitolo, avrai bisogno del file k3ng_keyer.
Vai su k3ng_cw_keyer-master e copia da lì la cartella k3ng_ keyer e incollala in C:/, fig.21.
La cartella e il formato del file sono ora completi e ora puoi finalmente inizia con il progetto Arduino K3NG Keyer stesso.
Figura 21, manipolatore k3ng
Tastiera Arduino 2560MEGA K3NG CW pagina 20
- Il K3NG Arduino MEGA 2560 a montaggio superficiale.
7.1 A partire dalla creazione dei componenti di Arduino K3NG keyer.
Scollega la connessione USB del tuo PC ogni volta che inizi a lavorare sulla breadboard.
Ora puoi finalmente iniziare a costruire il keyer fisico.
La breadboard che sto utilizzando corrisponde a quella mostrata a pagina 7, fig.3.
Figura 22, configurazione di base della breadboard con linee elettriche da Arduino MEGA
Tastiera Arduino 2560MEGA K3NG CW pagina 21
- Il progetto passo dopo passo.
Passaggio 8.1: aggiunta dei pulsanti.
Come prima fase di questo progetto posizionare i pulsanti il più a sinistra possibile sulla scheda, fig.24. Sono in totale sei, di cui quello più a sinistra è il pulsante di comando per la programmazione. Gli altri pulsanti sono pulsanti di memoria. Puoi aggiungere più pulsanti di memoria in un secondo momento, se lo desideri. I pulsanti sono semplici interruttori on-off, collegati tra loro secondo lo schema, fig.23.
Figura 23, diagramma con pulsanti
Figura 24, i pulsanti.
Tastiera Arduino 2560MEGA K3NG CW pagina 22
Passaggio 8.2: aggiunta dei resistori.
Posizionare le 6 resistenze sulla scheda, fig.26 e prestare attenzione alla posizione delle resistenze, si sbaglia facilmente.
La Fig, 25 mostra di nuovo il circuito.
Figura 25, sei resistori.
Figura 26, pulsanti con resistori.
Tastiera Arduino 2560MEGA K3NG CW pagina 23
Passaggio 8.3: aggiunta di un LED.
Questo passaggio può essere trovato anche sul sito Web di K3NG e fornisce un controllo se il pulsante di comando è stato premuto ed è incluso nei passaggi seguenti, fig.27 e 28.
Viene aggiunto un LED per verificare se il pulsante di comando è premuto. Premere brevemente una volta il pulsante di comando (la porta digitale D28 va “alta”, circa 5 Volt) per far accendere il led, premere ancora brevemente, il led si spegne nuovamente. Prestare molta attenzione a come è posizionato il LED, il filo di collegamento più lungo è il + ed è collegato alla resistenza da 470 Ohm.
Figura 27, schematica con LED
Figura 28, configurazione
Tastiera Arduino 2560MEGA K3NG CW pagina 24
Figura 29, nell'IDE Arduino: File/Apri
Figura 29, apri k3ng_keyer.ino
Figura 39a, file k3ng_keyer.ino di base
Passaggio 8.4: caricamento dei dati del keyer K3NG nell'IDE di Arduino
Apri il programma Arduino IDE.
Per aprire il programma K3NG di base nell'IDE di Arduino, vai su Apri e fai clic sul file k3ng_keyer.ino dalla cartella:
SSD (C:) Arduino k3ngkeyer, figure 29 e 29a.
In esso troverai tutto il necessario h. file necessari per costruire il keyer
Figura 29, apri k3ng_keyer.ino Figura 29a, file k3ng_keyer.ino di base
Tastiera Arduino 2560MEGA K3NG CW pagina 25
Tutti i file .h necessari ora appaiono nella barra verde orizzontale della finestra principale sottostante, che puoi vedere più chiaramente quando apri la finestra di espansione nascosta, fig.30.
Ora inizi dalla configurazione di base di K3NG e poi apporti le modifiche necessarie. Cosa fare con la cosiddetta h. i file possono/devono essere eseguiti, sarà chiarito nel resto del manuale.
Figura 30, Finestra principale dell'IDE Arduino
I due h. i file sono gli strumenti necessari che utilizzerai per apportare modifiche al programma.
a. keyer_pin_settings.h
Qui è dove determini l'occupazione del programma.
b. keyer_features_and_options.h
Lì puoi abilitare o disabilitare alcune opzioni del programma K3NG di cui hai bisogno per il tuo progetto.
Tastiera Arduino 2560MEGA K3NG CW pagina 26
Passaggio 8.5: regolazione del programma base K3NG
keyer_pin_settings.h, che determina l'impostazione del pin.
Figura 31, impostazioni dei pin
Il pin analogico è stato scelto per: A0. (Attualmente Command_mode_active_led è impostato su uno stato inattivo). Il pin digitale per la porta 28, fig.31, che commuta il LED.
A questo punto devi attivare tre comandi, fig.32 e lo fai rimuovendo i caratteri //. Non dimenticarlo, altrimenti il programma non funzionerà.
keyer_features_and_options.h.
Figura 32, attivazione delle funzioni.
Con "Modifica ˃ Trova..." puoi trovare rapidamente un comando nel programma.
Una volta apportate le modifiche ai codici, puoi compilare il programma e, dopo aver collegato il tuo Arduino MEGA, caricarlo su Arduino Mega per il test.
Anche qui se sei sicuro che tutti i componenti siano collegati correttamente?
Non dimenticare di compilare e aggiornare il programma.
Dopo aver premuto il pulsante Command, il LED dovrebbe accendersi e premendo nuovamente questo pulsante si spegnerà.
Tastiera Arduino 2560MEGA K3NG CW pagina 27
Passaggio 8.6: estendere con il potenziometro.
Di seguito troverai lo schema, fig.33 e la configurazione della breadboard, fig.34, con il potenziometro allegato, che puoi utilizzare in seguito per impostare la velocità del segnale da 1 a 999 parole al minuto (WPM).
Figura 33, diagramma con potenziometro.
Figura 34, configurazione breadboard con potenziometro.
Tastiera Arduino 2560MEGA K3NG CW pagina 28
Affinché il potenziometro funzioni, è necessario eseguire le seguenti operazioni:
Selezionare keyer_pin_settings.h, che determina l'impostazione del pin. Poiché la porta analogica A0 è già occupata, scegliere la porta A1, fig.35.
keyer_pin_settings.h
Figura 35, Porta analogica
Nel file keyer_features_and_options.h attivare i seguenti comandi, ( // remove ) fig.36/37
keyer_features_and_options.h
Figura 36, opzione potenziometro
Figura 37, opzione Rotary Encoder
Compilando il programma alla fine di questo passaggio, il caricamento non ha senso qui.
Opmerking:
Quando compili per la prima volta, probabilmente visualizzerai il messaggio di seguito, fig.38.
Il testo rosso non ha alcun significato allarmante, il testo sottostante indica quanto spazio di archiviazione è stato utilizzato dello spazio di archiviazione totale disponibile.
Figura 38, spazio di archiviazione utilizzato.
Tastiera Arduino 2560MEGA K3NG CW pagina 29
Passaggio 8.7: estensione chiave e altoparlante.
Figura 39, tasto e altoparlante
Figura 40, tasto di connessione, altoparlante
Tastiera Arduino 2560MEGA K3NG CW pagina 30
Con questo passaggio, figg.39 e 40, sarete in grado di convertire i caratteri della tastiera in segnali sonori utilizzando un piccolo altoparlante, forse di interesse solo per chi ha padronanza del CW.
Ma attenzione: nel passaggio 8.7 aggiungerai una tastiera con la quale i caratteri CW possono essere prodotti in modo udibile.
E diventa ancora più divertente se aggiungi un display nel passaggio 8.8 in cui puoi vedere cosa stai producendo in termini di caratteri CW.
Affinché i paddle dell'altoparlante e del keyer funzionino, non sono necessari comandi speciali nel file keyer_features_and_options.h.
Devi indicare nel file keyer_pin_settings.h quale impostazione pin scegli per il sidetone i paddle. Per i paddle sono stati selezionati l'altoparlante, pin 48, e pin 42 e 44, fig.41 e 41a.
Il transistor 2N2222 è un transistor di commutazione NPN standard e deve essere collegato secondo lo schema.
Le impostazioni dei pin chiave e sidetone, corrispondenti ai pin Arduino, sono:
Figura 41, impostazione pin tono laterale
keyer_pin_settings.h
Figura 41a, paddles
Passaggio 8.8: collegare la tastiera.
Per prima cosa aggiungerai una tastiera (connessione), con la quale puoi già produrre caratteri morse udibili, senza usare la chiave. La tastiera che utilizzo è del tipo PS/2, un tipo maneggevole e facilmente reperibile. In Fig. 42 è visibile la vista frontale della parte del telaio e accanto a quella di Fig. 43, dove devono essere collegati i relativi pin. Dopo il controllo, il test dopo la compilazione e il caricamento.
Figura 42, vista frontale della parte del telaio Figura 43, designazioni delle penne.
Tastiera Arduino 2560MEGA K3NG CW pagina 31
Figura 46a, la voce di avviso
Collegare la tastiera è “un gioco da ragazzi” Secondo le figure 44 e 45 seguenti, attivare i seguenti comandi, la figura 46 mostra il cablaggio aggiunto.
file keyer_pin_settings.h: durata
Figura 44, determinazione delle impostazioni dei pin.
keyer_features_and_options.h
Figura 45, Abilita feature_ps2_keyboard.
Figura 46, GND (nero), A3 (marrone) e 3 (rosa) e la connessione 5V (rosso)
Durante la compilazione verrà visualizzato il seguente avviso, Fig. 46a, relativo alla propria tastiera. Puoi ignorare questo avviso e procedere con il caricamento.
Figura 46a, la voce di avviso
Tastiera Arduino 2560MEGA K3NG CW pagina 32
Passaggio 8.9: collegamento del display.
L'uso di un display rende il progetto davvero divertente, perché ora puoi anche vedere ciò che produci con la tua tastiera, ed eventualmente la tua chiave.
Per rendere le cose un po' più chiare, ho usato una seconda breadboard che devi anche fornire con una connessione 5V e GND. Il display è un LCD a 4 bit a 2 righe. Successivamente, l'impostazione di decodifica può anche essere posizionata accanto alla 2a breadboard. Entrambe le breadboard vengono quindi ben riempite. Nei file keyer_pin_settings.h e keyer_featu-res_and_options.h, modificare quanto segue, fig. 47 e 48. Le figure 50 e 51 mostrano la configurazione della breadboard.
keyer_pin_settings.h bestand:
Figura 47, Impostazione LCD
keyer_features_and_options.h bestand:
Figura 48, Funzione LCD
Se si segue lo schema seguente, Fig. 49, il display dovrebbe funzionare correttamente.
Regolare il potenziometro R10 in modo che i caratteri diventino visibili.
Figura 49, circuito LCD
Tastiera Arduino 2560MEGA K3NG CW pagina 33
Figura 50, impostazione del pin di dettaglio
Figura 51, Configurazione LCD, LCD a 2 righe a 4 bit
Tastiera Arduino 2560MEGA K3NG CW pagina 34
Passaggio 8.10: la connessione al ricetrasmettitore.
Ora continua a costruire sulla tua prima breadboard.
Il design K3NG ha 3 connessioni TX, il che significa che puoi collegare 3 ricetrasmettitori, ad esempio un Kenwood, Icom e uno Yaesu.
Immagino che i tre ricetrasmettitori siano impostati su bande diverse in modo che se una banda va "chiusa", puoi continuare a contestare con l'altro ricetrasmettitore su un'altra banda. Forse un po' inverosimile, ma l'opportunità è offerta.
Per abilitare questa opzione è necessario modificare le porte per tx_key_line_1, tx_key_line_2 e tx_key_line_3 mostrate nel file keyer_pin_settings.h.
Ho messo il mio sui pin digitali 32, 34 e 36, fig.52.
Figura 52, le tre uscite TX attivate.
I CW-er possono ora "ticcare" il trasmettitore, per cui possono "leggere" il testo Morse di ritorno dalla stazione opposta a orecchio.
Con la tastiera puoi anche controllare il trasmettitore in modalità CW, ma i segnali Morse di ritorno non verranno decifrati per i "non CW", ma farai qualcosa al riguardo nel prossimo capitolo.
Le Figure 53, 54 e 55 mostrano lo schema e il cablaggio aggiunto sulla breadboard.
Arduino 2560MEGA K3NG CW-keyer pagina35
Figura 53, Schema di collegamento TX
Figura 55, Uscite T
Tastiera Arduino 2560MEGA K3NG CW pagina 36
Passaggio 8.11: DECODER CW DSP GEORTZ
Il capitolo "chiave" è ora chiuso ed è ora di dare un'occhiata alla parte di decodifica che decodifica il codice Morse in testo normale sul tuo display.
Questa parte è ampiamente tratta dal sito KF4BZT, in cui descrive che deve avvenire anche una conversione dall'ONU al controller MEGA 2560. Utilizza il codice base di OZ1JHM che può essere trovato su questo sito:
http://www.skovholm.com/cwdecoder
La decodifica si basa sull'algoritmo di Goertzel e puoi trovare le informazioni su:
https://en.wikipedia.org/wiki/Goertzel_algorithm
L'intero evento è un evento matematico così complesso che non l'ho approfondito. Nella libreria è incluso un file per Arduino chiamato goertzel.h.
Questo si prende cura di tutti gli algoritmi di decodifica necessari affinché funzioni correttamente.
Per fare ciò, è necessario regolare una serie di impostazioni in modo che Arduino Mega possa gestire questo codice.
Questo file si trova nella cartella Goertzel, come mostrato in fig.56.
Figura 56, mappa Goertzel
Apri il file goertzel.h con ad esempio WordPad dove puoi trovare alcune informazioni interessanti sulla frequenza di campionamento e sulla larghezza di banda
Tastiera Arduino 2560MEGA K3NG CW pagina 37
Nella prima parte del file, stampata in grigio, troverai ulteriori spiegazioni da parte di OZ1JHM sulle impostazioni.
Ci sono impostazioni a cui prestare attenzione, se la decodifica qui non funziona correttamente.
Secondo OZ1JHM, la frequenza target dovrebbe funzionare a 558 Hz o forse 744 Hz.
Modificare alcune cose nel rettangolo rosso, fig.57 per rendere i codici adatti all'Arduino Mega.
Ma tieni presente che un valore GOERTZ_SAMPLES alto richiede molto tempo, quindi devi trovare un compromesso.
Figura 57, Impostazioni di Goertz
Tastiera Arduino 2560MEGA K3NG CW pagina 38
Nel file keyer_pin_settings.h è necessario regolare il pinsetting. Scegli il pin A11, e per cw indicatore decoder pin 24, fig.58, 59 e 60.
Infine in keyer_features_and_options.h attivare l'opzione per rilevatore audio e cw_deco-der, fig.61.
Figura 58, regolazione per il MEGA
Per definire cw_decoder_pin, scegli il numero “nul”.
keyer_pin_settings.h
Figura 59, impostazione dei pin per il decoder.
keyer_features_and_options.h
Figura 60, Rilevatore Goertzel Audio
Figura 61, feature_cw_decoder
Tastiera Arduino 2560MEGA K3NG CW pagina 39
NB. Puoi memorizzare questo circuito accanto al circuito di visualizzazione sulla tua seconda breadboard.
Il led serve per facilitare la sintonia sul segnale Morse e lo si collega ad A11, fig.58 e 62.
Figura 62, configurazione della decodifica, 2a breadboard
Nota:
Incontrerai il nome Fritzing in molti personaggi e potresti chiederti cosa significhi.
Fritzing è il nome di un programma che usi per progettare circuiti e arrangiamenti breadboard.
Se vuoi saperne di più, puoi scaricare il programma (freeware) dal sito web:
Tastiera Arduino 2560MEGA K3NG CW pagina 40
- COME FUNZIONA IL DECODER
Sintonizzate il vostro ricevitore sulla parte CW della banda HF. Assicurati di aver collegato il LED tra la massa e il pin che hai scelto.
Sintonizzarsi su una stazione finché il LED non inizia a lampeggiare durante la ricezione in CW. È necessario sintonizzarsi per renderlo leggibile in modo che il LED veda che vengono inviati i dati corretti.
Gioca con le impostazioni di cui sopra nel file goertzel.h per vedere se riesci a ottenere una decodifica migliore. L'impostazione della larghezza di banda del ricetrasmettitore è (modalità CW) 1000 Hz, la decodifica è quindi ottimale per me.
- In tutta onestà, devo dire che non dovresti aspettarti troppo dalla decodifica. Il metodo di decodifica è ancora in una fase sperimentale. Per l'operatore in CW alle prime armi, la suddetta decodifica sul display è molto piacevole da seguire, soprattutto se c'è un segnale regolare "pulito" non disturbato dai segnali CW vicini.
Potresti anche provare a sintonizzarti sulle stazioni radiofaro, che trasmettono un piacevole script di segnale regolare.
Ulteriori informazioni sul funzionamento e informazioni aggiuntive del CW-keyer possono essere trovate sul sito:
https://blog.radioartisan.com/arduino-cw-keyer/
Il gruppo qui sotto è molto attivo e disponibile, puoi porre tutte le tue domande sul
Keyer K3NG-CW e altri progetti K3NG.
Siti aggiuntivi utili:
https://github.com/k3ng/k3ng_cw_keyer
https://learn.sparkfun.com/tutorials/how-to-read-a-schematic
https://www.arduino.cc/en/Principale/Software
https://makerzone.mathworks.com/resources/getting-started-with-arduino-mega-2560-hardware/
http://www.skovholm.com/cwdecoder
http://www.justradios.com/uFnFpF.html
Arduino 2560MEGA K3NG CW-keyer pagina 41
- Comandi da tastiera
Comandi speciali della tastiera PS2
F1 through F12------ play memories 1 through 12
Up Arrow------------- Increase CW Speed 1 WPM
Down Arrow--------- Decrease CW Speed 1 WPM
Page Up--------------- Increase sidetone frequency
Page Down----------- Decrease sidetone frequency
Right Arrow---------- Dah to Dit Ratio increase
Left Arrow------------ Dah to Dit Ratio decrease
Home------------------ reset Dah to Dit Ratio to default
Tab--------------------- pause sending
Delete----------------- delete the last character in the buffer
Esc--------------------- stop sending and clear the buffer
Scroll Lock ---------- Merge the next two characters to form a prosign
Shift------------------- Scroll Lock – toggle PTT line
CTRL-A---------------- Iambic A Mode
CTRL-B---------------- Iambic B Mode
CTRL-C----------------- Single Paddle Mode
CTRL-D----------------- Ultimatic Mode
CTRL-E----------------- Set Serial Number
CTRL-G---------------- Bug Mode
CTRL-H---------------- Hellschreiber Mode (requires FEATURE_HELL)
CTRL-I----------------- TX Line Disable/Enable
CTRL-M--------------- Set Farnsworth Speed (requires FEATURE_FARNSWORTH)
CTRL-N---------------- Paddle Revers
CTRL-O---------------- Sidetone On/Off
CTRL-T ----------------- Tune
CTRL-U----------------- PTT Manual On/Off
CTRL-W--------------- Set WPM
CTRL-Z---------------- Autospace On/Off
SHIFT-F1, F2, F3… Program memory 1, 2, 3… (programmeren van de geheugen toetsen)
ALT-F1, F2, F3… Repeat memory 1, 2, 3…
CTRL-F1, F2, F3… Switch to transmitter 1, 2, 3…
Arduino 2560MEGA K3NG CW-keyer pagina 42
- Elenco dei componenti
Componenti richiesti:
elemento |
nome, valori |
numero di |
|
Arduino MEGA, 2560 |
1x |
||
Breadboard |
2 x |
||
Tastiera PS/2 |
1x |
||
S 1,2,3,4,5,6 |
SU / a partire dal premi i pulsanti, 6x6 mm. |
6 x |
|
fili di collegamento |
carichi di |
||
Led 1, 2 |
Rood (633nm) |
2x |
|
R1,11,15,17 |
10 kΩ |
4x |
|
R2,3,4,5,6 |
1 kΩ |
5x |
|
R19, 20 |
470 Ω |
2x |
|
R7,10 |
10 kΩ, pot. meter |
2x |
|
R 8,9,11,12,13,16 |
100 Ω |
6x |
|
C1,2,4,5,6 |
0.01 μF (10nF) |
5x |
|
C3,C7 |
0.1 μF (100nF |
2x |
|
Q 1,2,3,4 |
2N2222A (NPN) |
4x |
|
Arduino 2560MEGA K3NG CW-keyer pagina 43
- Allegati
scarica pdf sotto
Scarica => Manuale Italiano Keyer Arduino K3NG
Aggiornamenti in corso del manuale per verifica del codice con l'hardware .
IMPORTANTE
Non mi prendo nessuna responsabilità del contenuto e di eventuali errori del presente manuale, compreso quello scaricato come pdf.