This package is intended to make it easy to carry out intensity scans using a sensor and a translation stage. It's first implementation is for ultrasound intensity scans using a hydrophone and three Thorlabs LTS stages, but this can be expanded upon.
Author Orchard-Ultrasound-Innovation
0 Stars
Updated Last
5 Months Ago
Started In
March 2021


Stable Dev Build Status Build Status Coverage Code Style: Blue ColPrac: Contributor's Guide on Collaborative Practices for Community Packages


This package relies on the following packages. To learn more about configuring and using these packages:

using IntensityScans
using IntensityScans.ThorlabsLTStage
using IntensityScans.TcpInstruments
using IntensityScans.Unitful

lts = initialize(LTS)
scope = initialize(AgilentDSOX4034A)
channel = 1
number_of_samples = get_data(scope, channel).info.num_points

scanner = IntensityScan(
    xyz = lts, 
    scope = scope, 
    channel = 1, 
    precapture_delay = 0u"µs",
    sample_size = 65104,
    post_move_delay = 0u"s",

wave_x = scan_x(scanner, [0u"m", 100u"mm"], 5)
wave_xy = scan_xy(scanner, [0u"m", 0.1u"m"], 5, [0u"mm", 0.1u"m"], 7)
wave_xyz = scan_xyz(scanner, [0u"m", 0.1u"m"], 3, [0u"m", 0.1u"m"], 3, [0u"m", 0.1u"m"], 3)

save(wave_xy; filename="/home/user/scanfolder/myscan")
save(wave_xyz; format=:matlab)

new_info_xy = load("home/user/scanfolder/myscan")

params = ScanParameters(
    medium = Medium(),
    excitation = Excitation(),
    f0 = 15e6,
    hydrophone_id = :Onda_HGL0200_2322,
    preamp_id = :Onda_AH2020_1238_20dB,

new_info_xy = compute_metrics(new_info_xy)
wave_xyz = compute_metrics(wave_xyz, params)


plot(new_info_xy; isppa=true)
plot(new_info_xy; ispta=true)
plot(new_info_xy; mi=true)

plot(wave_xyz; xslice=0u"m", ispta=true, mi=true)

Used By Packages

No packages found.