Архив 25 апреля 2009

Vega RP-007 radio

In December 2008 on a Russian HAM radio forum a new Russian-designed receiver was introduced. It is called Vega RP-007, or, in Russian, Вега РП-007. The name utilises a well-known Soviet electronics brand Vega, together with a number starting from zero, which means “highest class” according to GOST standarts. Well, it is really a great receiver.

The receiver was ordered by Russian military as a replacement for “political officer receiver” Sinitchka MP-64 (Синичка МП-64), that caused its “camouflage” design and anti-shock, dust- and waterproof body. Also, the receiver has a built-in flashlight and can be powered from any voltage source from 6 to 30 volts.

As you can see, the package of the receiver is not a carton box, but a very useful plastic case, where all the needed accessories can be carried. The package includes headphones, two power adapters – for 12-30 V DC and 220 V AC, both of them could be used as chargers, an external extra-long antenna on a reel, 4 AA rechargeable accumulators and a cloth bag for the receiver.

The schematic of the receiver is traditional for high-class all-band receivers, it is a superheterodyne with two frequency transformations. First IF is 55.845 Mhz, second IF – 455 kHz. Though, the receiver is slightly improved compared to popular Degen 1102 and Sony 7600. Better electromagnetic shielding is added, which reduces interference.

The technical characteristics is similar to other receivers of comparable class. There are MW (530-1710 kHz), SW (3000 – 29999 kHz) and two FM bands: Russian (66-74 MHz) and “traditional” (88-108 MHz). The tuning step in MW bands is 9/10 kHz, in SW – 5 kHz with possibility of entering the frequency manually with 1 kHz step. In FM, the automatic tuning step is 100 kHz, and the manual step is 10 kHz. The sensitivity is quite good: 20 uV on SW, 1 mV/m on MW, and 10 uV on FM bands.

As any PLL tuned receiver, Vega RP-007 has memory for frequencies – total 300: 100 for FM, 100 for SW, 100 for MW. Also, there is an alarm clock with its separate memory cell. We have a full set of connectors – the external antenna, the headphones and a line-out. All the sockets can be protected from dust with rubber stoppers.

The only disappointing feature of the receiver is its size and weight. It is quite big due to its protected casing – 190 х 119 х 35 mm dimensions, and 720 g weight. Though, it can be used in any environment – the working temperature is from -10 to 40 degrees Celsius, the case is dust- and waterproof and can stand more than 100 kg load.

radio_007

Also, there are no rotating or protruding parts, all the control is made by the waterproof keyboard. This can seem unconvenient, but try to imagine the receiver being thrown in a wall. I am more than sure that all the valcoders and beatiful knobs of a “civil” receiver will not survive that, while Vega will continue to work allright, thanks to impact protection. The telescopic antenna can be totally hidden inside the case.

The price of the receiver is unannounced, though it is known that one of the members of the forum has bought this receiver for 4000 roubles, that is around 120-130 $. The production was limited, but there were talks of an improved version, with SSB and 12 kHz DRM converter, so you can connect a computer with some software, like Dream, to listen to digital shortwave radio.

Новый раздел на сайте

Создал на сайте раздел на английском языке:

http://shura.luberetsky.ru/category/english/

Кто хочет – пиарьте :)

The quick and dirty amplifier

Оригинал на русском: http://shura.luberetsky.ru/2008/12/13/delaem-usilitel-dlya-kolonok/

The test of an anti-crisis loudspeaker proved that it does not work fine with a MP3 player as a source. So we will add a simle amplifier, like the one in “PC multimedia speakers”.

I have bought a Samsung KA2026 chip, as it is one of the simplest and cheapest chips for a small amplifier.

KA2206 as is

KA2206 as is

This chip costs about 0.75$ (18 rubles) in Moscow. There are many pin-to-pin compatible chips by different vendors, the most popular are: LA4180, LA4182, LA4183, LA4550, LA4555, LA4558, TEA2025. All this chips contain a two-channel audio amplifier, that also allows usage in a “bridge” circuit – with combined power of two channels. The parameters are good for a “multimedia system” – with 9-12 V supply the amplifier has a power of 2 W on a 8 Ohm load with 10% non-linear distortion. By the way, the “300 W” stickers on Chinese boomboxes and active loudspeakers are all lies. Most of them are built around a similar chip, that can’t deliver such power.

The datasheet stereo amplifier circuit is as follows:

The circuit

The circuit

You will need just some electrolytic capacitors, which I get by desoldering old PC motherboards. You don’t even need to make a PCB – all can be done by point-to point wiring on a piece of copper-clad board.

Point to point - that is cool

Point to point - that is cool

I used the wires from a twisted pair cable for the audio connector and power wires – it’s a real pleasure to tin and solder them.

The amplifier is finished

The amplifier is finished

After finishing the amplifier, we connect the speakers – the left and the right channel. As the power source, you can use a PC power supply – it has a 12 V channel, or a 9 V battery. The sound quality is similar to the chinese “active speakers” with “300 W PMPO” sticker.

In the second part of the video you can hear the “Corrosion of metal”, yeah!

Anti-crisis loudspeaker

Оригинал на русском: http://shura.luberetsky.ru/2008/12/11/antikrizisnyjj-dinamik/

Today, when all the world is struck by an economical crisis, a well-known Russian rock musician Pauk (Spider) advises to do some downshifting – for example, to go to the village and to grow pigs. Well, in the village you will need to listen to “Corrosion of metal” – the band of Pauk, so you need a powerful audiosystem to produce real hell madness. Today I will tell how to make cool loudspeakers out of trash. The original designer is Jose Pino of Mexico.

Tools and materials

Tools and materials

All you need is some magnets, paper, piece of cardboard, thin enameled wire (I will tell where to get it from) and a styrofoam plate from the nearest supermarket.

Russian Moment glue - the joy of a glue sniffer

Russian Moment glue - the joy of a glue sniffer

Also you will need some glue. I used “Moment” for paper and UHUpor for foam.

The magnets

The magnets

You can get the magnets in the shop or just steal them from the office.

So, let’s start. You should turn some layers of a paper band on a magnet (I used three rather weak magnets put together) and glue it to get a paper cylinder.

Magnets and paper

Magnets and paper

Then make a second layer, but not glue it to the first. You should get two paper cylinders – a smaller and a larger one.

Paper cylinders and a magnet

Paper cylinders and a magnet

Now throw away the smaller one, and the bigger will become a base for the coil of enameled wire. You will have to use the thinnest wire available, something like 0.1 or 0.2 mm – or AWG 32-38.

If you try to buy enameled wire, it will either be very expensive, or you will buy a several kilometres hank of cable. Nobody buys it, and if you need enameled wire, you could search it in old transformers, electric motors, CRT TVs and monitors and other similar things. In my box full of trash I found an output transformer of an old radio receiver “Mayak-202″, which had the wire I needed.

This transformer is five years older than me

This transformer is five years older than me

Glue the paper cylinder to the centre of styrofoam plate and begin to wind the coil, leaving a free piece of wire of 5-7 inches. You could put the magnet inside not to crush the cylinder.

Winding the coil

Winding the coil

The resistance of a coil should be from 8 to 32 Ohms. I made 100 wounds and then protected it from loosing with a piece of Post-it paper.

The coil is ready

The coil is ready

After that I covered the ends of the wire with solder (you need not to crimp the insulating enamel – it will burn itself from the soldering iron heat) and measured the resistance, getting some 13 Ohms.

Checking the coil

Checking the coil

Now we only need to hang the loudspeaker on some base. I used a big piece of cardboard, which can hold two loudspeakers and a simple amplifier. Take two business card-sized pieces of paper, fold them and glue to the speaker:

Also, I have cut the unneeded part of the paper cylinder

Also, I have cut the unneeded part of the paper cylinder

Now we make two holes for the wire in the cardboard and glue the suspension and the magnet to the speaker base. Be careful not to glue the magnet to the coil or the plate – the speaker will not work then!

Assembled loudspeaker

Assembled loudspeaker

The loudspeaker is ready! To check it, you only have to take a battery and touch its terminals with the ends of the speaker wires. You should hear “clicks” when touching.

The sensitivity of the speaker is quite poor, so you will need an amplifier to build a really powerful anticrisis stereosystem.

Hello!

This is the first post in the English section of my site.

This section is created specially for translations of my best posts, and is available by its adress – http://shura.luberetsky.ru/category/english. Sorry, no RSS or crossposting yet.

It will contain posts about electronics, HAM radio and, maybe, some photo reports. Enjoy!

К вопросу о легкости программирования

Вчера в комментариях два раза прозвучала точка зрения, совпадающая с популярным в среде программистов и сочувствующих заблуждением, что языки высокого уровня, типа VBScript, Java, C# или VB.NET – это идеальные языки для “не-программистов” – простые в освоении и “безопасные”, то есть не дающие совершить ошибку. Но… Давайте вспомним задачу об определении резонансной частоты. Предлагается следующий код на VBScript (немного исправленный для большей реалистичности единиц измерения):

strL = InputBox("Enter the inductance, uH")
strC = InputBox("Enter the capacitance, pF")
WScript.Echo "Resonance frequency in kHz is " & ( 1.0 / Sqr( CDbl(strL) * CDbl(strC) ) )

Казалось бы, все очень просто. Но давайте сравним его с вот такой программой на QBasic:

DIM L AS DOUBLE, C AS DOUBLE
INPUT "Enter the inductance in uH and capacitance in pF", L, C
PRINT "Resonance frequency is "; 1.0/SQR(L * C); " kHz"

В чем разница? Программа на “классическом” Basic записывается с использованием простых операторов – здесь это DIM, INPUT и PRINT. Согласитесь, что PRINT – намного более очевидная запись для оператора вывода, чем “заклинание” WScript.Echo, а INPUT – более естественная форма записи оператора ввода, чем InputBox. Функция CDbl – это вообще “по ту сторону добра и зла”.

Изложение основ Basic в объеме, достаточном для простых “вычислительных” программ, занимает всего лищь десяток страниц. Конечно, можно на том же десятке страниц рассказать и об аналогичных возможностях, к примеру, VBScript. В чем разница полученных знаний? Если изучающий “классический” Basic получит полное изложение основных возможностей языка, то его собрат по несчастью, вынужденный разбирать нюансы VBScript, будет воспринимать команды вроде WScript.Echo как “заклинания”. Это еще не самое страшное. Если десятистраничное изложение основ VBScript – это начало книги по этому языку программирования, то, естественно, будет упомянут и “объект” WScript. Что такое “объект” – разъяснить человеку, не знакомому с программированием вообще, невозможно. Можно сколько угодно говорить, например, о прелестях использования библиотеки классов MFC, но если вы ни разу не писали с использованием “голого” WinAPI – вы никогда не поймете, что объектно-ориентированное программирование по своей сути – это удобный способ записи некоторых реально возникающих конструкций. Не увидев того, как эти конструкции возникают, невозможно представить себе, что такое “объект”.

Необходимо различать две категории: “не-программистов” и “начинающих программистов”. Все перечисленные выше языки, приводимые в качестве примера “простых”, рассчитаны на вторую категорию. Заметьте, что “классические” примеры “быдлокодерства” – это примеры приложения “программистского” мышления, отягощенного абсолютным незнанием возможностей языка и стандартных алгоритмов. Например, догадаться о том, что вот так можно проверить, записано ли в строке число, “не-программист” не сможет. Зато плохой программист именно так и напишет:

bool IsNumber (string str){return (str.Replace ("0", "").Replace ("1", "").Replace ("2", "").Replace ("3", "").Replace ("4", "").Replace ("5", "").Replace ("6", "").Replace ("7", "").Replace ("8", "").Replace ("9", "").Length == 0);}

В чем мораль? Не надо считать пользователя идиотом, подсовывая ему усложненный ради какой-то мифической “безопасности” язык. В том же “классическом” Basic были команды PEEK и POKE, осуществлявшие прямой доступ к памяти. Естественно, никто в здравом уме ими не пользовался, пока речь не заходила о каких-то специфических операциях, типа “взлома” ресурсов игр на том же Спектруме. Что же мы получили в разнообразных вариантах “визуального Бейсика”? По сути – ничего, кроме отказа от старых интуитивно понятных команд в угоду ООП. Вместе с заменой PRINT на “заклинания” вроде WScript.Echo, были выброшены, как устаревшие, многие полезные конструкции, работа с файлами и графикой превратилась в дикий кошмар.

Замечу, что один из лучших языков для “не-программистов” – встроенный язык Matlab – за все время своего существования не переиначивался в рамках модных тенденций. Я бы сказал, что для определенных задач он подходит намного лучше, чем Basic, и намного превосходит многие языки в простоте освоения.

Все же заявления относительно “простоты” современных объектно-ориентированных языков относятся к простоте их использования низкоквалифицированными программистами. Объектно-ориентированные возможности позволяют писать код так, что ошибки в одном из модулей можно исправить, не затрагивая всю остальную программу. При работе над проектом нескольких человек и соблюдении ими определенного стиля программирования, определяемого самим языком, изменения в одном из модулей не должны вызывать ошибок в других, своего рода “принцип открытой архитектуры”. Это и надо понимать под “безопасностью”.