|
|
# RTIS Dev Remote Matlab Wrapper
|
|
|
|
|
|
This is a wrapper of the RTIS Dev Remote library to use RTIS Dev remotely over IP from MATLAB.
|
|
|
Quickly develop with connected RTIS devices. Almost all RTIS Dev functions are available as well as automatic conversion
|
|
|
of RTIS Dev custom class objects.
|
|
|
Quickly develop with connected RTIS devices. Almost all RTIS Dev functions are available as well as automatic conversion of RTIS Dev custom class objects.
|
|
|
|
|
|
# Unavailable RTIS Dev methods
|
|
|
Here is a short list of the current RTIS Dev methods that aren't available through this wrapper:
|
... | ... | @@ -61,26 +60,32 @@ measurement_processed_from_raw = rtisdev.process_measurement(measurement_raw); |
|
|
## Example
|
|
|
A bigger example showing how to connect, record and process a measurement and plot the microphone signals and RTIS Energyscape.
|
|
|
```matlab
|
|
|
%% Configure and run RTIS Dev
|
|
|
|
|
|
% Connect and verify matching versions of RTIS Dev
|
|
|
rtisdev = RTISDev("192.168.1.150");
|
|
|
|
|
|
% Connect to RTIS Device
|
|
|
rtisdev.open_connection();
|
|
|
|
|
|
% Configure the recording and processing settings
|
|
|
rtisdev.set_recording_settings('premade', "default_25_50");
|
|
|
rtisdev.set_processing_settings('premade', "2D_5m_181");
|
|
|
|
|
|
settings = rtisdev.get_current_settings();
|
|
|
|
|
|
% Get an ACTIVE measurement (protect your ears!) and process it
|
|
|
measurement_processed = rtisdev.get_processed_measurement('behaviour', true);
|
|
|
|
|
|
%% Plot of raw microphone data
|
|
|
%% Plot raw microphone data
|
|
|
|
|
|
% Convert decimal data format to binary
|
|
|
data = de2bi(measurement_processed.rawData, 32);
|
|
|
|
|
|
% Generate settings for converting to microphone signals. These have to match the recording settings!
|
|
|
fs_pdm = double(settings.pdmSampleFrequency); % PDM samplefrequency
|
|
|
fs_mic = double(settings.dacSampleFrequency); % Microphone samplefrequency
|
|
|
|
|
|
% PDM demodulation.
|
|
|
% PDM demodulation of binary data to the microphone signals
|
|
|
[b_pdm, a_pdm] = butter(6, 100e3 / ( fs_pdm / 2));
|
|
|
[b_bpf, a_bpf] = butter(6, [20e3 80e3] / (fs_mic / 2));
|
|
|
data_filtered = (filter(b_pdm, a_pdm, data));
|
... | ... | |