Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/twinleaf/tio-labview
Twinleaf I/O Labview Library
https://github.com/twinleaf/tio-labview
Last synced: 23 days ago
JSON representation
Twinleaf I/O Labview Library
- Host: GitHub
- URL: https://github.com/twinleaf/tio-labview
- Owner: twinleaf
- License: mit
- Created: 2017-12-20T23:03:33.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-09-26T17:19:49.000Z (about 1 year ago)
- Last Synced: 2024-11-30T20:39:44.357Z (23 days ago)
- Size: 19 MB
- Stars: 1
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Labview Twinleaf I/O
This package implements a communications protocol in labview to work with [Twinleaf sensors](http://www.twinleaf.com) using Twinleaf I/O (TIO) as the communications layer. Data from the sensors is received via PUB messages and sensor parameters may be changed using REQ/REP messages.
![VM Monitor](doc/VMmonitor.gif)
An included example for monitoring data from a [Twinleaf VMR vector magnetometer](http://www.twinleaf.com/vector/VMR).
## Prerequisites
- [National Instruments Labview 2017](https://ni.com/labview). Conversion to earlier versions is available on request.
- [National Instruments VISA 2017](https://ni.com/visa) to use the serial port directly.## Installation
Unzip or clone into the `instr.lib` folder in the Labview installation directory.
## Use
Several example VIs are available:
- VM Monitor: view and log data from a [Twinleaf VMR](http://www.twinleaf.com/vector/VMR) sensor.
- CSB Control: Adjust the output of a [Twinleaf CSB](http://www.twinleaf.com/current/CSB) current supply.These examples can be called with "url" that is either a serial port (`ASRL47::INSTR`, `COMx`) or a net url such as `tcp://localhost` if using a serial port proxy such as the one in [tio-tools](https://github.com/twinleaf/tio-tools).
## Programming
![VM Monitor](doc/VIexample.png)
The execution is threaded by virtue of three separate loops: an event loop (top), a stream loop (middle), and, in this case, a signal processing loop (bottom). Stream data returns from the `TIO Device Tick` VI and can be converted to a useful array using `TIO Data Stream`. RPC is handled using named queues.
## TODO
- [x] Heartbeat
- [x] Close port
- [ ] Multi-device synchronization support