23.10.2017 Настройка и ресурсы Ettus Research USRP E312

Материал из SRNS
Перейти к: навигация, поиск
 
(не показаны 42 промежуточные версии 1 участника)
Строка 1: Строка 1:
 
<summary [ hidden ]>
 
<summary [ hidden ]>
 
<center>[[File:USRP E312.png|400px]]</center>
 
<center>[[File:USRP E312.png|400px]]</center>
'''''Страница, посвященная программно-определяемой радиосистеме (англ. Software-defined radio, SDR) — Ettus Research USRP E312.'''''
+
Страница посвящена Ettus Research USRP E312.
 
</summary>
 
</summary>
  
[[File:USRP E312.png|right|600px]]
+
[[File:USRP E312.png|right|500px]]
 
'''Д'''анная страница содержит сведения по настройке и работе с USRP E312, чтобы всегда было под рукой!
 
'''Д'''анная страница содержит сведения по настройке и работе с USRP E312, чтобы всегда было под рукой!
  
 
== Что за штука USRP E312? ==
 
== Что за штука USRP E312? ==
=== Краткие ТТХ: ===  
+
Универсальный программно-определяемый приёмопередатчик (Universal Software Radio Peripheral - Software Defined Radio (USRP - SDR), фирма Ettus Research, модель E312.
 +
 
 +
=== Полезные ссылки ===
 +
 
 +
[https://kb.ettus.com/E310/E312 E310/E312]
 +
 
 +
[https://www.ettus.com/content/files/USRP_E312_Datasheet.pdf Datasheet E312 (mini)]
 +
 
 +
[http://files.ettus.com/manual/page_usrp_e3x0.html USRP Hardware Driver and USRP Manual]
 +
 
 +
[https://www.mathworks.com/help/supportpkg/usrpembeddedseriesradio/ug/manual-host-radio-hardware-setup.html#bu1kohy-39 Matlab Manual Host-Radio Hardware Setup]
 +
 
 +
[https://www.mathworks.com/help/supportpkg/usrpembeddedseriesradio/examples.html Примеры использования]
 +
 
 +
[https://www.mathworks.com/help/supportpkg/usrpembeddedseriesradio/performance.html Перформанс!]
 +
 
 +
[http://www.analog.com/ru/products/rf-microwave/integrated-transceivers-transmitters-receivers/wideband-transceivers-ic/ad9361.html#product-overview Конфигурируемый радиочастотный приемопередатчик AD9361]
 +
 
 +
[https://wiki.analog.com/resources/eval/user-guides/ad-fmcomms2-ebz/software/filters#download_filters MATLAB Filter Design Wizard for AD9361]
 +
 
 +
=== Краткие ТТХ ===  
 
{| class="standard"
 
{| class="standard"
 
  !'''RF Capabilities:'''
 
  !'''RF Capabilities:'''
Строка 50: Строка 70:
 
* 446 g
 
* 446 g
 
|}
 
|}
 +
 +
=== Расшифровка цветовых показаний бледного индикатора на кнопке питания ===
 +
 +
'''Выкл''' - указывает, что устройство выключено и не заряжается, возможно вы его <s>убили</s> сломали;
 +
 +
'''Медленное мигание зеленым''' - указывает, что устройство выключено и заряжается;
 +
 +
'''Быстрое мигание зеленым''' - указывает, что устройство включено и заряжается;
 +
 +
'''Постоянный зеленый''' - указывает, что устройство включено и не заряжается;
 +
 +
'''Постоянный оранжевый''' - указывает, что устройство включено и разряжено;
 +
 +
'''Быстрое мигание оранжевого''' - указывает, что устройство включено, разряжается и заряжается ниже 10% заряда;
 +
 +
'''Быстрое мигание красного''' - указывает код ошибки:
 +
1 - ошибка низкого напряжения;
 +
2 - ошибка низкого напряжения регулятора;
 +
3 - ошибка питания FPGA;
 +
4 - ошибка питания DRAM;
 +
5 - ошибка напряжения в сети 1.8 В;
 +
6 - ошибка напряжения в сети 3.3 В;
 +
7 - ошибка питания дочерней сети / TX;
 +
8 - ошибка зарядного устройства;
 +
9 - ошибка температуры зарядного устройства;
 +
10 - ошибка батареи;
 +
11 - ошибка температуры топливного бака (прим. ред. - перевод дословный);
 +
12 - глобальная ошибка температуры;
 +
 +
== Как подключиться? ==
 +
Устройство поддерживает подключение к компьютеру посредством Ethernet и USB.
 +
 +
Первоначально, подключившись по USB, на компьютере необходимо ввести команду
 +
<source lang="matlab">
 +
sudo screen /dev/ttyUSB0 115200
 +
</source>
 +
Включив устройство, можно увидеть лог загрузки, ''screen'' прокручивать его не дает, но можно менять масштаб Ctrl + колесико мыши, таким образом, читерски, можно посмотреть несколько строчек выше, если надо.
  
 
== USRP E312 + Matlab ==
 
== USRP E312 + Matlab ==
На данный момент необходимо разобраться в возможностях связки USRP E312 + Matlab, потенциально это видится как компактный программируемый имитатор сигналов.
+
На данный момент необходимо разобраться в возможностях связки USRP E312 + Matlab, потенциально, помимо всего прочего, это видится как компактный программируемый имитатор сигналов.
  
 
Есть такой мануал [https://www.mathworks.com/help/supportpkg/usrpembeddedseriesradio/ug/manual-host-radio-hardware-setup.html#bu1kohy-39 Host-Radio Hardware Setup], в нём по пунктам написано как подключить и настроить, однако, по умолчанию для прибора выставлен IP: '''192.168.3.2''', что согласитесь, для нашей сети '''192.168.0.*''' не очень удобно. Надо его менять.
 
Есть такой мануал [https://www.mathworks.com/help/supportpkg/usrpembeddedseriesradio/ug/manual-host-radio-hardware-setup.html#bu1kohy-39 Host-Radio Hardware Setup], в нём по пунктам написано как подключить и настроить, однако, по умолчанию для прибора выставлен IP: '''192.168.3.2''', что согласитесь, для нашей сети '''192.168.0.*''' не очень удобно. Надо его менять.
  
=== Смена IP USRP E312 ===
+
=== Смена IP USRP E312 (192.168.0.95) ===
По мануалу [https://www.mathworks.com/help/supportpkg/usrpembeddedseriesradio/ug/manual-host-radio-hardware-setup.html#bu1kohy-39 Host-Radio Hardware Setup] Шаг 3 предполагает настройку хост-компьютера, а лишь потом на Шаге 4 копирование загрузочных файлов на SD карту. Стоит сделать иначе. Сначала скопирвоать на карту файлы командой
+
По мануалу [https://www.mathworks.com/help/supportpkg/usrpembeddedseriesradio/ug/manual-host-radio-hardware-setup.html#bu1kohy-39 Host-Radio Hardware Setup] '''Шаг 3''' предполагает настройку хост-компьютера, а лишь потом на '''Шаге 4''' копирование загрузочных файлов на SD карту. Стоит сделать иначе. Сначала скопировать на карту файлы командой,
 
<source lang="matlab">
 
<source lang="matlab">
 
dev = sdrdev ( 'E310' );
 
dev = sdrdev ( 'E310' );
downloadImage (dev, 'SDCardLocation' , 'S:' )
+
downloadImage (dev, 'SDCardLocation' , 'F:' )
 
</source>
 
</source>
 
где задаются следующие аргументы:
 
где задаются следующие аргументы:
  
''E310'' - используется даже если у нас E312.
+
''E310'' - используется, даже если у нас E312.
 +
 
 +
''F:'' - название диска SD карты на компьютере, например, '/media/F8FF-1F5F'или 'F:'
 +
 
 +
У меня напрямую на карту не получилось скопировать, отсутствовали права доступа, потому я просто указал папку на компьютере, туда Matlab записал файлы, после чего, я их просто скопировал на карту памяти.
 +
 
 +
Среди скопированных файлов необходимо найти ''interfaces'', его содержимое переписываем нужным образом, например, чтобы IP адрес устройства стал ''192.168.0.95'' должно быть так:
 +
<source lang="matlab">
 +
# interface configuration
 +
auto lo eth0
 +
iface lo inet loopback
 +
# eth0: Static configuration
 +
iface eth0 inet static
 +
address 192.168.0.95
 +
netmask 255.255.255.0
 +
gateway 192.168.0.1
 +
 
 +
# eth0: Dynamic configuration
 +
# iface eth0 inet dhcp
 +
</source>
 +
Сохраняем изменения. Теперь при загрузке с SD карты устройство скопирует этот файл себе в файловую систему в ''/etc/network/interfaces'' автоматически, однако при старте система не обратит на него внимание. На сколько я смог разобраться в этом вопросе, возможно ядро собрано таким образом, что ''/etc/network/interfaces'' не используется при загрузке.
 +
 
 +
Чтобы IP таки прочитался из ''interfaces'' необходимо набрать команду
 +
<source lang="matlab">
 +
/etc/init.d/S40network restart
 +
</source>
 +
Я её добавил в конце файла ''S10sdr'', который находится в папке ''init.d'' на SD карте, что она выполнялась автоматически при старте системы.
 +
 
 +
После этого, при загрузке E312, получаем нужный нам IP адрес.
 +
 
 +
Теперь можно SSH, пользователь - '''root''', пароль - '''root'''.
 +
 
 +
=== Проверка соединения в Matlab ===
 +
 
 +
Коротенький скриптик инициализации и проверки устройства
 +
<source lang="matlab">
 +
dev = sdrdev ( 'E310' );
 +
dev.IPAddress = '192.168.0.95';
 +
hwinfo = info(dev);
 +
disp(hwinfo);
 +
</source>
 +
 
 +
В ответ должно быть что-то типа
 +
<source lang="matlab">
 +
## Establishing connection to hardware. This process can take several seconds.
 +
                    Status: 'Full information'
 +
          ProtocolVersion: '7.0.0'
 +
          FirmwareVersion: '7.0.0 for Zynq, build Mar 20 2017 19:46:13'
 +
          HardwareVersion: '7.0.0 for Zynq, build Mar 20 2017 19:16:39'
 +
    HardwareRxCapabilities: 'Device does not have targeted Rx DUT'
 +
    HardwareTxCapabilities: 'Device does not have targeted Tx DUT'
 +
            RFBoardVersion: 'RF Board: No EEPROM information available, PCORE: version 8.0.98'
 +
    RFBoardRxCapabilities: 'BasebandSampleRate: [520.9kHz,30.72MHz]; CenterFrequency: [70MHz,6GHz]; NumChannels=2'
 +
    RFBoardTxCapabilities: 'BasebandSampleRate: [520.9kHz,30.72MHz]; CenterFrequency: [70MHz,6GHz]; NumChannels=2'
 +
</source>
 +
 
 +
=== Проблемки ===
 +
'''MTU is larger than the FastSendDatagramThreshold'''
 +
<source lang="matlab">
 +
The MTU (1472) is larger than the FastSendDatagramThreshold (1024)!
 +
This will negatively affect the transmit performance.
 +
See the transport application notes for more detail.
 +
</source>
 +
 
 +
[https://ru.wikipedia.org/wiki/Maximum_transmission_unit MTU] (Maximum Transmission Unit) - максимальная единица передачи, означает максимальный размер пакета, который может быть передан по сети без фрагментации. Если пакет будет иметь больший размер, чем установленное значение MTU, он будет фрагментироваться (разбиваться) на более мелкие.
 +
 
 +
Алгоритм повышения FastSendDatagramThreshold такой:
 +
# В ''Выполнить'' набрать ''Regedit'';
 +
# Попасть в HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\AFD\Parameters\;
 +
# Далее с именем '''FastSendDatagramThreshold''' создать файл ''New > DWORD (32-bit)'';
 +
# Выбираем '''Десятичное''' и вводим значение '''1500''';
 +
# Жмем ОК и перезагружаем комп.
  
''SDCardDrive''- название диска SD карты на компьютер, например, '/media/F8FF-1F5F'или 'F:'
 
  
 
[[Категория:HOWTO]] [[Категория:испытания и эксперименты]]
 
[[Категория:HOWTO]] [[Категория:испытания и эксперименты]]
 +
{{wl-publish: 2017-10-27 17:37:35 +0300 | Ustinov }}

Текущая версия на 15:07, 9 июня 2018

USRP E312.png

Данная страница содержит сведения по настройке и работе с USRP E312, чтобы всегда было под рукой!

Содержание

[править] Что за штука USRP E312?

Универсальный программно-определяемый приёмопередатчик (Universal Software Radio Peripheral - Software Defined Radio (USRP - SDR), фирма Ettus Research, модель E312.

[править] Полезные ссылки

E310/E312

Datasheet E312 (mini)

USRP Hardware Driver and USRP Manual

Matlab Manual Host-Radio Hardware Setup

Примеры использования

Перформанс!

Конфигурируемый радиочастотный приемопередатчик AD9361

MATLAB Filter Design Wizard for AD9361

[править] Краткие ТТХ

RF Capabilities: Baseband Processing: Software: Synchronization: Power: Peripherals: Form Factor:
  • 2 RX, 2 TX
  • Filter banks
  • 70 MHz to 6 GHz frequency range
  • Up to 56 MHz of bandwidth
  • Xilinx Zynq 7020
    • ARM Cortex A9 866 MHz dual-core
    • 7 Series FPGA
  • 1 GB DDR3 RAM for ARM processor
  • 512 MB DDR3 RAM for FPGA logic
  • Up to 10 MS/s sample data transfer rate to ARM processor
  • UHD version 3.9.2 or later
  • RFNoC
  • GNU Radio
  • C/C++
  • Python
  • PPS time reference
  • External DC power supply
  • Internal 3200 mAh Li-ion battery
  • 10/100/1000 BASE-T Ethernet
  • Integrated GPS receiver
  • 2 host USB ports
  • 9-axis IMU
  • 133 x 68 x 32 mm
  • 446 g

[править] Расшифровка цветовых показаний бледного индикатора на кнопке питания

Выкл - указывает, что устройство выключено и не заряжается, возможно вы его убили сломали;

Медленное мигание зеленым - указывает, что устройство выключено и заряжается;

Быстрое мигание зеленым - указывает, что устройство включено и заряжается;

Постоянный зеленый - указывает, что устройство включено и не заряжается;

Постоянный оранжевый - указывает, что устройство включено и разряжено;

Быстрое мигание оранжевого - указывает, что устройство включено, разряжается и заряжается ниже 10% заряда;

Быстрое мигание красного - указывает код ошибки: 1 - ошибка низкого напряжения; 2 - ошибка низкого напряжения регулятора; 3 - ошибка питания FPGA; 4 - ошибка питания DRAM; 5 - ошибка напряжения в сети 1.8 В; 6 - ошибка напряжения в сети 3.3 В; 7 - ошибка питания дочерней сети / TX; 8 - ошибка зарядного устройства; 9 - ошибка температуры зарядного устройства; 10 - ошибка батареи; 11 - ошибка температуры топливного бака (прим. ред. - перевод дословный); 12 - глобальная ошибка температуры;

[править] Как подключиться?

Устройство поддерживает подключение к компьютеру посредством Ethernet и USB.

Первоначально, подключившись по USB, на компьютере необходимо ввести команду

sudo screen /dev/ttyUSB0 115200

Включив устройство, можно увидеть лог загрузки, screen прокручивать его не дает, но можно менять масштаб Ctrl + колесико мыши, таким образом, читерски, можно посмотреть несколько строчек выше, если надо.

[править] USRP E312 + Matlab

На данный момент необходимо разобраться в возможностях связки USRP E312 + Matlab, потенциально, помимо всего прочего, это видится как компактный программируемый имитатор сигналов.

Есть такой мануал Host-Radio Hardware Setup, в нём по пунктам написано как подключить и настроить, однако, по умолчанию для прибора выставлен IP: 192.168.3.2, что согласитесь, для нашей сети 192.168.0.* не очень удобно. Надо его менять.

[править] Смена IP USRP E312 (192.168.0.95)

По мануалу Host-Radio Hardware Setup Шаг 3 предполагает настройку хост-компьютера, а лишь потом на Шаге 4 копирование загрузочных файлов на SD карту. Стоит сделать иначе. Сначала скопировать на карту файлы командой,

dev = sdrdev ( 'E310' );
downloadImage (dev, 'SDCardLocation' , 'F:' )

где задаются следующие аргументы:

E310 - используется, даже если у нас E312.

F: - название диска SD карты на компьютере, например, '/media/F8FF-1F5F'или 'F:'

У меня напрямую на карту не получилось скопировать, отсутствовали права доступа, потому я просто указал папку на компьютере, туда Matlab записал файлы, после чего, я их просто скопировал на карту памяти.

Среди скопированных файлов необходимо найти interfaces, его содержимое переписываем нужным образом, например, чтобы IP адрес устройства стал 192.168.0.95 должно быть так:

# interface configuration
auto lo eth0
iface lo inet loopback
# eth0: Static configuration
iface eth0 inet static
address 192.168.0.95
netmask 255.255.255.0
gateway 192.168.0.1

# eth0: Dynamic configuration
# iface eth0 inet dhcp

Сохраняем изменения. Теперь при загрузке с SD карты устройство скопирует этот файл себе в файловую систему в /etc/network/interfaces автоматически, однако при старте система не обратит на него внимание. На сколько я смог разобраться в этом вопросе, возможно ядро собрано таким образом, что /etc/network/interfaces не используется при загрузке.

Чтобы IP таки прочитался из interfaces необходимо набрать команду

/etc/init.d/S40network restart

Я её добавил в конце файла S10sdr, который находится в папке init.d на SD карте, что она выполнялась автоматически при старте системы.

После этого, при загрузке E312, получаем нужный нам IP адрес.

Теперь можно SSH, пользователь - root, пароль - root.

[править] Проверка соединения в Matlab

Коротенький скриптик инициализации и проверки устройства

dev = sdrdev ( 'E310' );
dev.IPAddress = '192.168.0.95';
hwinfo = info(dev);
disp(hwinfo);

В ответ должно быть что-то типа

## Establishing connection to hardware. This process can take several seconds.
                    Status: 'Full information'
           ProtocolVersion: '7.0.0'
           FirmwareVersion: '7.0.0 for Zynq, build Mar 20 2017 19:46:13'
           HardwareVersion: '7.0.0 for Zynq, build Mar 20 2017 19:16:39'
    HardwareRxCapabilities: 'Device does not have targeted Rx DUT'
    HardwareTxCapabilities: 'Device does not have targeted Tx DUT'
            RFBoardVersion: 'RF Board: No EEPROM information available, PCORE: version 8.0.98'
     RFBoardRxCapabilities: 'BasebandSampleRate: [520.9kHz,30.72MHz]; CenterFrequency: [70MHz,6GHz]; NumChannels=2'
     RFBoardTxCapabilities: 'BasebandSampleRate: [520.9kHz,30.72MHz]; CenterFrequency: [70MHz,6GHz]; NumChannels=2'

[править] Проблемки

MTU is larger than the FastSendDatagramThreshold

The MTU (1472) is larger than the FastSendDatagramThreshold (1024)!
This will negatively affect the transmit performance.
See the transport application notes for more detail.

MTU (Maximum Transmission Unit) - максимальная единица передачи, означает максимальный размер пакета, который может быть передан по сети без фрагментации. Если пакет будет иметь больший размер, чем установленное значение MTU, он будет фрагментироваться (разбиваться) на более мелкие.

Алгоритм повышения FastSendDatagramThreshold такой:

  1. В Выполнить набрать Regedit;
  2. Попасть в HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\AFD\Parameters\;
  3. Далее с именем FastSendDatagramThreshold создать файл New > DWORD (32-bit);
  4. Выбираем Десятичное и вводим значение 1500;
  5. Жмем ОК и перезагружаем комп.

[ Хронологический вид ]Комментарии

(нет элементов)

Войдите, чтобы комментировать.

Персональные инструменты
Пространства имён

Варианты
Действия
SRNS Wiki
Рабочие журналы
Приватный файлсервер
QNAP Сервер
Инструменты