From 699104b6639fb98b300a7a9f8612e57eb4d9b120 Mon Sep 17 00:00:00 2001 From: Artur Silva Date: Fri, 20 Sep 2024 16:12:09 +0100 Subject: [PATCH 1/2] Add new olfactometer example --- docs/articles/toc.yml | 8 +- .../OdorValveToggle/OdorValveToggle.bonsai | 225 ++++++++++++++++++ .../OdorValveToggle/OdorValveToggle.md | 46 ++++ .../OdorValveToggle/OdorValveToggle.png | Bin 0 -> 64055 bytes 4 files changed, 276 insertions(+), 3 deletions(-) create mode 100644 docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai create mode 100644 docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md create mode 100644 docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.png diff --git a/docs/articles/toc.yml b/docs/articles/toc.yml index 8f6ea18..34587b1 100644 --- a/docs/articles/toc.yml +++ b/docs/articles/toc.yml @@ -6,7 +6,7 @@ href: install_bonsai.md - name: Install Harp href: install_harp.md -- name: Bonsai/Harp Examples (13) +- name: Bonsai/Harp Examples (14) items: - name: Behavior Board (11) items: @@ -32,10 +32,12 @@ href: ../workflows/HarpExamples/BehaviorBoard/QuadratureEncoder/QuadratureEncoder.md - name: Log Selected href: ../workflows/HarpExamples/BehaviorBoard/LogSelected/LogSelected.md - - name: Olfactometer (1) + - name: Olfactometer (2) items: - name: End Valve Toggle - href: ../workflows/HarpExamples/Olfactometer/EndValveToggle/EndValveToggle.md + href: ../workflows/HarpExamples/Olfactometer/EndValveToggle/EndValveToggle.md + - name: Odor Valve Toggle + href: ../workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md - name: Syringe Pump (1) items: # - name: Toggle Single Steps diff --git a/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai new file mode 100644 index 0000000..e297296 --- /dev/null +++ b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai @@ -0,0 +1,225 @@ + + + + + + 1 + + + + Device Commands + + + + Active + On + true + On + Disabled + false + COM5 + + + + Device Events + + + 1.1 + + + + + + + 1.2 + + + + + + + 1.3 + + + + + + + 2 + + + + + B + false + + + + Write + + Enabled + + + + 3 + + + + + E + false + + + + Write + + Disabled + + + + 4 + + + + Write + + Valve0 Valve1 + + + + 5 + + + + Write + + 500 + + + + 6 + + + + Write + + 500 + + + + 7 + + + + Write + + 80 + 80 + 0 + 0 + 720 + + + + + + + Device Commands + + + 8 + + + + Device Events + + + + + + 9 + + + + + A + false + + + + 9.1 + + + + Write + + Valve0 + + + + Device Commands + + + + PT2S + + + + 9.2 + + + + Write + + Valve1 + + + + Device Commands + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md new file mode 100644 index 0000000..2045ca9 --- /dev/null +++ b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md @@ -0,0 +1,46 @@ +# Odor Valve Toggle + +## Summary +This example demonstrates how to configure the Harp Olfactometer to toggle the Odor Valves using the [Harp Olfactometer](https://github.com/harp-tech/device.olfactometer) board (see hardware diagram below). + +## Workflow + +:::workflow +![Example](~/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai) +::: + +## Details + +1. Creates a subject node to send commands to the Olfactometer board and publishes all the events from the device. The PortName property in the Olfactometer node needs to be set to the COM device on the computer. To create the subject node, right-click on the Olfactometer node -> Create Source -> Behavior Subject, and name it accordingly. + 1. Filters event messages associated with the Channel 0 flow rate. + 2. Filters event messages associated with the Channel 1 flow rate. + 3. Filters event messages associated with the Channel 4 flow rate. +2. Enables the Olfactometer flow by pressing the 'B' key. +3. Disables the Olfactometer flow by pressing the 'E' key. +4. Enables the End valve to be configured with hardware generated pulse. +5. Configures the value (in milliseconds) of the Odor valve 0 pulse. +6. Configures the value (in milliseconds) of the Odor valve 1 pulse. +7. Sets the target flow rate for all the channels of the olfactometer. If they are not used they are configure with zero value. +8. Ensures that command messages are sent only when the device is ready. +9. Sets the state of the different valves and End valve to perform a 500 ms odor delivery through the End valve after 'A' key press. + 1. Odor valve 0 is enabled 2 seconds before the Odor valve 1 toggles. + 2. Odor valve 1 is enabled. + + +## Requirements + +This example requires the following Bonsai package: +- Harp.Olfactometer (from nuget.org) - make sure to select 'Include prerelease' + + +## Schematics + +The [Harp Olfactometer](https://github.com/harp-tech/device.olfactometer) supports up to 4 odor channels and 1 carrier line. + +In this example Channel 0 (odor line) is configured with a 80 ml/min flow rate, Channel 1 (odor line) with 80 ml/min and Channel 4 (carrier line) with 720 ml/min. + +After 'A' key press the odor channel 0 flow is enabled, goes through the correspondent vial, mixes with the auxiliary carrier line and is delivered to the animal. The duration of the odor pulse is 500 ms. Then, 2 s after the enabling of odor channel 0, odor channel 1 is also enabled during 500 ms, mixed with the auxiliary carrier line and delivered to the animal. + +![Schematics](./OdorValveToggle.png){ width=80% } + + diff --git a/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.png b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.png new file mode 100644 index 0000000000000000000000000000000000000000..3e8231959b8c929aef1634fba2f14caf06ed84fa GIT binary patch literal 64055 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

-@BDZ^ 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 literal 0 HcmV?d00001 From 8234723c086d759ad1cc509b8ff5b378be2e66d7 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 23 Sep 2024 10:23:55 +0100 Subject: [PATCH 2/2] end valve related corrections made (bonsai and markdown) --- .../Olfactometer/OdorValveToggle/OdorValveToggle.bonsai | 8 ++++---- .../Olfactometer/OdorValveToggle/OdorValveToggle.md | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai index e297296..478998f 100644 --- a/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai +++ b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.bonsai @@ -98,8 +98,8 @@ Write - - 500 + + 500 @@ -108,8 +108,8 @@ Write - - 500 + + 500 diff --git a/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md index 2045ca9..6805454 100644 --- a/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md +++ b/docs/workflows/HarpExamples/Olfactometer/OdorValveToggle/OdorValveToggle.md @@ -17,14 +17,14 @@ This example demonstrates how to configure the Harp Olfactometer to toggle the O 3. Filters event messages associated with the Channel 4 flow rate. 2. Enables the Olfactometer flow by pressing the 'B' key. 3. Disables the Olfactometer flow by pressing the 'E' key. -4. Enables the End valve to be configured with hardware generated pulse. +4. Enables the valves to be configured with hardware generated pulse. 5. Configures the value (in milliseconds) of the Odor valve 0 pulse. 6. Configures the value (in milliseconds) of the Odor valve 1 pulse. 7. Sets the target flow rate for all the channels of the olfactometer. If they are not used they are configure with zero value. 8. Ensures that command messages are sent only when the device is ready. -9. Sets the state of the different valves and End valve to perform a 500 ms odor delivery through the End valve after 'A' key press. +9. Sets the state of the different valves to perform a 500 ms odor delivery after 'A' key press. 1. Odor valve 0 is enabled 2 seconds before the Odor valve 1 toggles. - 2. Odor valve 1 is enabled. + 2. Odor valve 1 is enabled. ## Requirements @@ -37,7 +37,7 @@ This example requires the following Bonsai package: The [Harp Olfactometer](https://github.com/harp-tech/device.olfactometer) supports up to 4 odor channels and 1 carrier line. -In this example Channel 0 (odor line) is configured with a 80 ml/min flow rate, Channel 1 (odor line) with 80 ml/min and Channel 4 (carrier line) with 720 ml/min. +In this example, Channel 0 (odor line) is configured with a 80 ml/min flow rate, Channel 1 (odor line) with 80 ml/min and Channel 4 (carrier line) with 720 ml/min. After 'A' key press the odor channel 0 flow is enabled, goes through the correspondent vial, mixes with the auxiliary carrier line and is delivered to the animal. The duration of the odor pulse is 500 ms. Then, 2 s after the enabling of odor channel 0, odor channel 1 is also enabled during 500 ms, mixed with the auxiliary carrier line and delivered to the animal.