10 ianuarie 2018

ICOM IC-7300 QRP measurements

On the ICOM IC-7300 FaceBook group i saw some discussions about the lowest power at which the radio transmitt.
Measuring the low power is not a simple task using common power-meters so I put on the work my NRP-Z11 Rohde-Schwarz sensor.
The sensor is able to measure very accurate the power between 200pW and 200mW (-67dbm - +23dbm) in the 10 MHz - 8 GHz range.
In the setup I used a BIRD 50A-MFN-20 attenuator (-20 db) and took measurements under that 23 dbm which can hurt the sensor.

I measured the power for "0", "5" and "10" on the "RF Power" Menu.

The results are in the XLS table below:

And here is a printscreen of the R&S program:


1. I had a revelation: the sensor is rated for frequencies above 10 MHz so the measurements below that frequency shall be taken with circumspection. Sorry I forget this, I rarely use it to measure the frequencies below 50 MHz.
2. The results are from my ICOM IC7300 and can be or not consistent with other similar radios.

07 ianuarie 2018

APRS via LoRa I

O sa notez aici cateva din etapele setarii unui echipament care foloseste un mix de tehnologie veche (APRS) cu tehnologia noua (LoRa).

Momentan, cateva din elementele pregatitoare.
-GPS uBlox NEO6MV2
-Software de evaluare si programare. U-Center de la uBlox.
-Software analiza RS232/COM  Terminal V1.9b

Folosim un Arduino TRINKET PRO 3V cu GPS serial conectat la o interfata SoftwareSerial 9k6.
Utilizam doar portul de intrare (RX) al interfetei seriale pentru a face "economie" de pini.

Arduino preia tramele NMEA furnizate de GPS si selecteaza doar cele de tip $GPGGA care contin informatia de pozitie si timp UTC.
Identificarea se face pe baza prezentei substringului $GPGGA iar codul defalca informatia de longitudine, latitudine, altitudine si timp, acestea fiind separate prin virgula.

Dupa separare, le reansambleaza intr-un nou sir, de forma


Acesta este transmis pe Serial HW catre transceiver-ul LoRa care il emite cu 1200 baud si FEC cu periodicitatea stabilita prin SW.

ToDo: De portat pe TRINKET separarea HH, MM, SS, initial fiind verificata pe ARDUINO MEGA.
ToDo: De format trama standard APRS care va fi transmisa alternativ cu cea pe formatul de mai sus.
ToDo: De realizat functia de transformare POZ in BASE91 ASCII pentru compatibilitatea cu APRS tip MicE.

              String sendLORA = PREAMBLE + "," + CALLSIGN +
                                "," + StringLAT + "," + StringLON + "," + StringALT +
                                "," + lastHH+ "," + stringMM + "," + lastSS +
                                "," + StringTIME + "," + stringVAL + "," + "K";




06 noiembrie 2017

Pulse Frequency Modulation IGBT controller

I have been asked by a friend to make a custom IGBT controller. Well, I heard about this marvels previously but didn't bother to read about more than the general definition.

I will not reiterate here all the theory behind the Isolated Gate Bipolar Transistors; who want to learn, there are several pages on the internet. 1, 2, 3.

After reading a lot of datasheets I decided that the best approach is to make a PFM generator working on 40-80 kHz with fixed 50/50 duty cycle, modulated with a PWM signal at around 100 kHz.
One big issue was that the 50/50  signal have to had a precise timing to match the Half-Bridge command mode. This is hard to achieve with microcontrollers but very easy if you use a specialised IC. So I start to look after this kind of circuits and found a lot of them!

The IC controller at choice was the IR2153 made by International Rectifiers (later aquired by Infineon).

Here is the waveform needed by a Half Bridge IGBT to work properly:

I did the schematic on a small breadboard and found it work from the first power-on! So, time to move on, to the variable PWM.
The simplest way to generate it was from a Arduino board using the lowest interrupt timer at 122 Hz. I wanted to use the interrupt timer because it's steady, precise and it's not affected by other "things" the microcontroller does. And I planned to do some nice things with it!

To keep the story short, I generate the signal with the Arduino, put the informations on a I2C LCD display (a nice bargraph, temperature and status) and did a test check-out at the Power On. More on that, on the small Youtube video I made. It's in Romanian but you get the point!

Here is the schematics and the code.
Oh, a big thanks to Damien Clarke who wrote a very nice library for reading analog values!!!

The CODE is available HERE ON THE GITHUB.

Postări populare

OnLine logbook YO3HJV