HackRF & Matlab & Simulink

В данном форуме можно обсудить и найти информацию о SDR, в том числе о HackRF One, RTL-SDR и подобных устройствах, а также о программах SDRSharp, SDR Console и других
Ответить
Аватара пользователя
Иван Солодков
Новичок
Сообщения: 12
meble kuchenne PL this is the official website
Зарегистрирован: 16 ноя 2016, 09:42

HackRF & Matlab & Simulink

Сообщение Иван Солодков »

Как подключить hackrf и Matlab ?

Отправлено спустя 2 минуты 3 секунды:
Matlab это очень мощная система для цифровой обработки сигналов.

Аватара пользователя
Иван Солодков
Новичок
Сообщения: 12
Зарегистрирован: 16 ноя 2016, 09:42

HackRF & Matlab & Simulink

Сообщение Иван Солодков »

Вот тут документация по установке, но у меня чет не получилось установить(((((((
http://www.mathworks.com/matlabcentral/ ... m-analyzer

oneon
Интересующийся
Сообщения: 35
Зарегистрирован: 09 авг 2016, 09:03

HackRF & Matlab & Simulink

Сообщение oneon »

На днях разбирался как подключить HackRF к MATLAB R2017a Win 7 64-bit. Конкретнее вот этот проект:
https://github.com/kit-cel/simulink-hackrf
Видео установки на Win 8 :
При поднятии этого проекта есть определенные нюансы и "грабли". :sorry: Если кому нибудь еще данная тема интересна то могу поделится своим опытом :computer:
Последний раз редактировалось DesignerMix 26 фев 2018, 23:17, всего редактировалось 1 раз.
Причина: Встроил видео youtube

сav212
Новичок
Сообщения: 2
Зарегистрирован: 18 мар 2018, 19:54

HackRF & Matlab & Simulink

Сообщение сav212 »

oneon, Здравствуйте! У меня возникла острая необходимость подключения HackRF One к Matlab?
По этой инструкции на видео бьюсь уже неделю и никак не получается. Вижу, что там различные директории назначения и т.п.
Там описано как подключить написанную модель к Симулинк через кучу настроек и манипуляций. В итоге у меня не получилось :oops: даже сказать частично получилось. Почему-то не компилируются .с файлы командой mex - hackrd.c и так далее.
В итоге, а можно ли просто подключить HackRF One напрямую к Matlab не через Симулинк? Или же подскажите как подключить к Симулинк.
Спасибо!

alex48151
Новичок
Сообщения: 1
Зарегистрирован: 27 мар 2018, 21:35

HackRF & Matlab & Simulink

Сообщение alex48151 »

oneon, Здравствуйте! я установил библиотеку в соответствии с видео, но возникли 2 проблемы: 1) после каждого выключения компьютера библиотека слетает и ее приходится устанавливать заново 2) при запуске модели всплывает ошибка S-function: hackrf_source не существует. Можете что-нибудь подсказать? Спасибо!

oneon
Интересующийся
Сообщения: 35
Зарегистрирован: 09 авг 2016, 09:03

HackRF & Matlab & Simulink

Сообщение oneon »

Здравствуйте уважаемые форумчане!
Честно сказать я уж подумал что данная тема никому не интересна.
Из заданных вопросов причину того почему не работает я не понимаю. Давайте попробуем по другому. Я на выходных постараюсь снять видео полного процесса установки всех необходимых библиотек с комментариями и опубликую на форуме + весь софт (если влезет) кроме самого MATLAB :sorry: . То есть покажу то как это работает у меня. От предложенного мною порядка установки и будем исходить. Может такой подход поможет Вам решить вашу задачу. :computer:

oneon
Интересующийся
Сообщения: 35
Зарегистрирован: 09 авг 2016, 09:03

HackRF & Matlab & Simulink

Сообщение oneon »

Так ка сообщение администратору сайта я отправить не могу то свой вопрос задам в этой ветки. :thinking:
Как и обещал я подготовил видео подключения HackRF к MATLAB R2017a. + необходимое программное обеспечение + файл с описанием процесса установки.
Однако: папка с программами без учета MATLAB R2017a весит 94 мегабайта; видеоролик хоть и сжатый весит 97 мегабайт; файл с описанием порядка установки весит 360 кБ.
Вопрос как правильно теперь все это опубликовать ? :sorry: :computer:

Аватара пользователя
DesignerMix
Администратор
Администратор
Сообщения: 6799
Зарегистрирован: 25 апр 2014, 10:51
Откуда: Белгород
Контактная информация:

HackRF & Matlab & Simulink

Сообщение DesignerMix »

oneon, теперь вы можете отправлять личку.

Если у вас есть учетка Google то я думаю что видео можно загрузить на YouTube, если хотите сделать его доступным только для форума, то при загрузке выберите "доступ только по ссылке" и разрешите встраивание.

Файлы и ПО можно заархивировать и загрузить на Google drive или на яндекс диск, открыть доступ к ним и разместить на форуме ссылку.

PS: Я бы и не против загрузки всего этого на форум, но места многовато займет да и при скачивании нагрузка на сервер будет возрастать, так что луче всего пользоваться сторонними сервисами.

oneon
Интересующийся
Сообщения: 35
Зарегистрирован: 09 авг 2016, 09:03

HackRF & Matlab & Simulink

Сообщение oneon »

Я Вас понял. С YouTube разбираться не хочу :thinking:
Первая ссылка программы + мануал:
https://www.dropbox.com/s/oavuepkhu2vsm ... l.rar?dl=0

Вторая ссылка видео установки:
https://www.dropbox.com/s/cfvvbz9u8s4ab ... k.mp4?dl=0

Если что то будет невозможно скачать пишите, я постараюсь исправить :sorry: :computer:

P.S. Читаем инструкцию а затем смотрим видео, думаем когда что то делаем :sorry: , пинаем меня если заметили что то не то :thinking:

Аватара пользователя
DesignerMix
Администратор
Администратор
Сообщения: 6799
Зарегистрирован: 25 апр 2014, 10:51
Откуда: Белгород
Контактная информация:

HackRF & Matlab & Simulink

Сообщение DesignerMix »

oneon, все проверил, все можно скачать. Спасибо что поделились опытом, наверняка это пригодится людям

сav212
Новичок
Сообщения: 2
Зарегистрирован: 18 мар 2018, 19:54

HackRF & Matlab & Simulink

Сообщение сav212 »

oneon, Спасибо большое! Все получилось)))

Отправлено спустя 11 минут 27 секунд:
oneon, На фоне развивающегося успеха :D , подскажите пожалуйста, можно ли не запуская симулинк работать с HackRF или же забирать данные из модели в Matlab (допустим на GUI). Поясню задачу: создал GUI (axes, пару кнопок управления Hack - частота и полоса), кнопкой запуск - отображался бы спектр в axes на GUI, а не открывал бы модель симулинка.

oneon
Интересующийся
Сообщения: 35
Зарегистрирован: 09 авг 2016, 09:03

HackRF & Matlab & Simulink

Сообщение oneon »

Здравствуйте сav212 !
Сразу хочу прояснить один момент, я не специализируюсь на MATLAB (хотя время от времени его активно использую) :crazy: Данную задачу я решил чисто из "спортивного интереса" (просто было свободное время) .
Судя по имеющимся форумам Ваша задача имеет решение. К примеру пользователь Rukhlenko » на форуме http://matlab.exponenta.ru/forum/matlab ... t2961.html пишет:
Порядок работы следующий:

1. С помощью LoadLibrary загружается нужная библиотека.
2. С помощью libpointer устанавливается соответствие между переменными среды Матлаб и аргументами вызываемой программы..
3. С помощью calllib вызывается и выполняется нужная функция.
4. С помощью get получаем результаты вычислений.
5. Выгружает библиотеку после использования с помощью unloadlibrary.

В принципе, идеология та же, что и при написании MEX-функций, только интерфейс реализуется средствами самого Матлаб, а не на языке высокого уровня, что гораздо удобнее.

Как то так :computer: :sorry:

P.S. Честно сказать я не понимаю в чем такая острая необходимость подключения HackRF к MATLAB. Производить обработку сигнала в реальном времени? :thinking: Но ведь не каждый пользователь сможет позволить себе такую мощную машину. На мой взгляд проще записать сигнал в файл и работать уже с файлом в MATLAB.

Аватара пользователя
Иван Голев
Новичок
Сообщения: 4
Зарегистрирован: 12 сен 2015, 10:40
Контактная информация:

HackRF & Matlab & Simulink

Сообщение Иван Голев »

CMake Error at C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:517 (file):
file STRINGS file
"C:/hackrf/hackrf-master/host/libhackrf/build/CMakeFiles/3.12.1/CompilerIdC/a.exe"
cannot be read.
Call Stack (most recent call first):
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:37 (CMAKE_DETERMINE_COMPILER_ID_CHECK)
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCCompiler.cmake:112 (CMAKE_DETERMINE_COMPILER_ID)
CMakeLists.txt:25 (project)


CMake Error at C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:523 (list):
list sub-command REMOVE_DUPLICATES requires list to be present.
Call Stack (most recent call first):
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:37 (CMAKE_DETERMINE_COMPILER_ID_CHECK)
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCCompiler.cmake:112 (CMAKE_DETERMINE_COMPILER_ID)
CMakeLists.txt:25 (project)


CMake Error at C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:589 (file):
file failed to open for reading (Invalid argument):

C:/hackrf/hackrf-master/host/libhackrf/build/CMakeFiles/3.12.1/CompilerIdC/a.exe
Call Stack (most recent call first):
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:37 (CMAKE_DETERMINE_COMPILER_ID_CHECK)
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCCompiler.cmake:112 (CMAKE_DETERMINE_COMPILER_ID)
CMakeLists.txt:25 (project)

CMake Error at C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:591 (string):
string begin index: 1 is out of range 0 - 0
Call Stack (most recent call first):
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:37 (CMAKE_DETERMINE_COMPILER_ID_CHECK)
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCCompiler.cmake:112 (CMAKE_DETERMINE_COMPILER_ID)
CMakeLists.txt:25 (project)


CMake Error at C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:599 (math):
math cannot parse the expression: " * 16 + ": syntax error, unexpected
exp_TIMES, expecting exp_PLUS or exp_MINUS or exp_OPENPARENT or exp_NUMBER
(2)
Call Stack (most recent call first):
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:37 (CMAKE_DETERMINE_COMPILER_ID_CHECK)
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCCompiler.cmake:112 (CMAKE_DETERMINE_COMPILER_ID)
CMakeLists.txt:25 (project)


CMake Error at C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:601 (file):
file failed to open for reading (Invalid argument):

C:/hackrf/hackrf-master/host/libhackrf/build/CMakeFiles/3.12.1/CompilerIdC/a.exe
Call Stack (most recent call first):
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCompilerId.cmake:37 (CMAKE_DETERMINE_COMPILER_ID_CHECK)
C:/CMake/share/cmake-3.12/Modules/CMakeDetermineCCompiler.cmake:112 (CMAKE_DETERMINE_COMPILER_ID)
CMakeLists.txt:25 (project)


The C compiler identification is GNU 6.3.0
Check for working C compiler: C:/MinGW/bin/gcc.exe
Check for working C compiler: C:/MinGW/bin/gcc.exe -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Detecting C compile features
Detecting C compile features - done
Could NOT find LIBUSB (missing: LIBUSB_LIBRARIES)
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
LIBUSB_LIBRARIES (ADVANCED)
linked by target "hackrf" in directory C:/hackrf/hackrf-master/host/libhackrf/src

Configuring incomplete, errors occurred!
See also "C:/hackrf/hackrf-master/host/libhackrf/build/CMakeFiles/CMakeOutput.log".
See also "C:/hackrf/hackrf-master/host/libhackrf/build/CMakeFiles/CMakeError.log".

Alexei
Новичок
Сообщения: 1
Зарегистрирован: 23 сен 2018, 10:02

HackRF & Matlab & Simulink

Сообщение Alexei »

Добрый день. Согласно Вашего метода пытался подключить Hack
уперся в 10 пункте... можно попросить помощи...
>> setenv('MW_MINGW64_LOC','C:\TDM-GCC-64')
>> make

Building target 'hackrf_find_devices.c':
Error using mex
MEX cannot find library 'hackrf' specified with the -l option.
MEX looks for a file with one of the names:
libhackrf.lib
hackrf.lib
Please specify the path to this library with the -L option.


Error in make (line 66)
mex(options{:}, 'src/hackrf_find_devices.c')

Аватара пользователя
Иван Голев
Новичок
Сообщения: 4
Зарегистрирован: 12 сен 2015, 10:40
Контактная информация:

HackRF & Matlab & Simulink

Сообщение Иван Голев »

oneon,
Добрый вечер.
В чем может быть проблема?

mingw32-make: *** No targets specified and no makefile found. Stop.

kilosoli
Новичок
Сообщения: 7
Зарегистрирован: 18 авг 2018, 10:27

HackRF & Matlab & Simulink

Сообщение kilosoli »

Всем привет! Пишу в эту ветку, т.к. вопрос не тянет, на мой взгляд, на отдельную тему, но кажется очень близким к Матлабу.
Каким способом можно отправить произвольный сигнал с помощью HackRF One? Например, передать морзянку в АМ или ЧМ или какой-нибудь битовый поток.
Я много гуглил на эту тему и, в целом, понял, что никто этим вопросом не задавался. В GNU Radio есть блоки-генераторы синуса, шума и импульсов, но нет блока, в котором можно описать сигнал функцией или программой. Возможно, стоит подойти с другой стороны - сгенерировать IQ-файл и отправить его на HackRF, но и таких генераторов всего два. И они не позволяют сделать произвольный сигнал.
Вот эти генераторы:
https://github.com/jgibbard/iqtool
https://github.com/xaratustrah/iqtools

Отправлено спустя 42 минуты 54 секунды:
Похоже, появилась ещё одна идея! Нужно просто сгенерировать битовый поток и промодулировать им несущую, а это делается легко в GNU Radio! Поизучаю библиотеку https://pypi.org/project/bitstream/2.0.3/

oneon
Интересующийся
Сообщения: 35
Зарегистрирован: 09 авг 2016, 09:03

HackRF & Matlab & Simulink

Сообщение oneon »

kilosoli почему только два? Вот инструмент для преобразования изображений в потоки IQ :crazy: Работает четко :sorry:
https://github.com/polygon/spectrum_painter

Отправлено спустя 18 минут 13 секунд:
Alexei писал(а):
23 сен 2018, 10:11
Добрый день. Согласно Вашего метода пытался подключить Hack
уперся в 10 пункте... можно попросить помощи...
>> setenv('MW_MINGW64_LOC','C:\TDM-GCC-64')
>> make

uilding target 'hackrf_find_devices.c':
Error using mex
MEX cannot find library 'hackrf' specified with the -l option.
MEX looks for a file with one of the names:
libhackrf.lib
hackrf.lib
Please specify the path to this library with the -L option.


Error in make (line 66)
mex(options{:}, 'src/hackrf_find_devices.c')
Здравствуйте!
Перед запуском файла make.m необходимо создать пустой файл libhackrf.lib в директории C:\simulink-hackrf-1.0\deps\bin

P.S. Не спешите, внимательней читайте порядок установки :sorry:

Отправлено спустя 4 минуты 22 секунды:
Иван Голев писал(а):
29 сен 2018, 22:27
Добрый вечер.
В чем может быть проблема?

mingw32-make: *** No targets specified and no makefile found. Stop.
Alexei Исходя только из этого сообщения тяжело что то сказать. Возможно что то не прописали. В общем необходимо больше информации для того что бы Вам помочь. :thinking:

Ответить

Вернуться в «Программно-определяемое радио»