Name | vibrationview-api JSON |
Version |
0.1.5
JSON |
| download |
home_page | None |
Summary | Python API for VibrationVIEW software |
upload_time | 2025-08-04 19:48:01 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.7 |
license | # VibrationVIEW Python API License
## MIT License with VibrationVIEW Attribution
Copyright (c) 2025 Vibration Research Corporation
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
1. The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
2. This code is designed to work with VibrationVIEW software, which is a commercial product. Users of this Software must have a valid license for VibrationVIEW software to use this Software for its intended purpose.
3. All product and company names are the registered trademarks of their original owners. VibrationVIEW is a registered trademark of Vibration Research Corporation.
4. Any redistributions, modifications, or derivative works of this Software must include attribution to the original authors and a statement that the Software works with VibrationVIEW.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
keywords |
vibration
testing
vibrationview
api
|
VCS |
 |
bugtrack_url |
|
requirements |
pywin32
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# VibrationVIEW Python API
A Python API wrapper for interfacing with Vibration Research Corporation's VibrationVIEW software.
[](https://pypi.org/project/vibrationview-api/)
[](https://opensource.org/licenses/MIT)
## Overview
This package provides a Python interface to VibrationVIEW, allowing for:
- Test automation and control (start, stop, pause)
- Data acquisition and analysis
- Window management
- Channel configuration
- Input/output monitoring
- File operations
- Specialized test controls (e.g., sine sweep functions)
The API wraps the COM interface provided by VibrationVIEW to enable seamless integration with Python scripts and applications.
## Installation
```bash
pip install vibrationview-api
```
### Requirements
- Windows operating system (compatible with Windows 10 and Windows 11)
- VibrationVIEW software installed
- VibrationVIEW automation option (VR9604) - OR - VibrationVIEW may be run in Simulation mode without any additional hardware or software
- Python 3.7 or higher
- pywin32 (automatically installed as a dependency)
- psutil (automatically installed as a dependency)
## Quick Start
```python
from vibrationviewapi import VibrationVIEW
# Test basic functionality
try:
# Connect to VibrationVIEW
vv = VibrationVIEW()
# Print connection status
if vv.vv is None:
print("Failed to connect to VibrationVIEW")
else:
print("Connected to VibrationVIEW")
# Get software version
version = vv.GetSoftwareVersion()
print(f"VibrationVIEW version: {version}")
# Get hardware info
input_channels = vv.GetHardwareInputChannels()
output_channels = vv.GetHardwareOutputChannels()
print(f"Hardware: {input_channels} input channels, {output_channels} output channels")
except Exception as e:
print(f"Error: {e}")
finally:
# Clean up resources
if 'vv' in locals() and vv is not None:
vv.close()
print("Connection closed")
## Key Features
### Test Control
- Open, start, stop, and pause tests
- Run tests from specified file paths
- Monitor test status
### Data Acquisition
- Retrieve vector data (time, frequency, waveform)
- Get channel readings and control values
- Access vector properties (units, labels, length)
### Window Management
- Minimize, maximize, restore and activate application windows
- Control window state programmatically
### Channel Configuration
- Read and configure channel settings
- Access TEDS data
- Configure input properties (sensitivity, coupling, etc.)
### Sine-Specific Functions
- Control sweep direction and rate
- Adjust sweep and demand multipliers
- Hold at specific frequencies or resonances
### File Operations
- Save test data
- Export data to various formats using the command-line utilities
## API Documentation
For detailed documentation of all available methods, please visit:
[VibrationVIEW API Documentation](https://www.vibrationresearch.com/vibrationview-api/)
## Examples
### Running a Sine Test and Recording Data
```python
from vibrationviewapi import VibrationVIEW
import time
import os
# Connect to VibrationVIEW
vv = VibrationVIEW()
# Open a sine test
vv.OpenTest("C:\\VibrationVIEW\\Profiles\\sine_sweep.vsp")
# Start the test
vv.StartTest()
# Wait for test to enter running state
time.sleep(2)
# Start recording
vv.RecordStart()
# Let test run for 30 seconds
time.sleep(30)
# Stop recording
vv.RecordStop()
# Get the recording filename
recording_file = vv.RecordGetFilename()
print(f"Recording saved to: {recording_file}")
# Stop the test
vv.StopTest()
```
### Accessing Channel Information
```python
from vibrationviewapi import VibrationVIEW
# Connect to VibrationVIEW
vv = VibrationVIEW()
# Get number of hardware channels
num_channels = vv.GetHardwareInputChannels()
print(f"Hardware has {num_channels} input channels")
# Print information for each channel
for i in range(num_channels):
channel_num = i + 1 # 1-based for display
label = vv.ChannelLabel(i)
unit = vv.ChannelUnit(i)
sensitivity = vv.InputSensitivity(i)
print(f"Channel {channel_num}:")
print(f" Label: {label}")
print(f" Unit: {unit}")
print(f" Sensitivity: {sensitivity}")
# Try to get TEDS information if available
teds_info = vv.Teds(i)
if teds_info and teds_info[0] and "Teds" in teds_info[0]:
print(f" TEDS data available: {len(teds_info[0]['Teds'])} entries")
```
Raw data
{
"_id": null,
"home_page": null,
"name": "vibrationview-api",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "vibration, testing, VibrationVIEW, api",
"author": null,
"author_email": "Vibration Research Corporation <support@vibrationresearch.com>",
"download_url": null,
"platform": null,
"description": "# VibrationVIEW Python API\r\n\r\nA Python API wrapper for interfacing with Vibration Research Corporation's VibrationVIEW software.\r\n\r\n[](https://pypi.org/project/vibrationview-api/)\r\n[](https://opensource.org/licenses/MIT)\r\n\r\n## Overview\r\n\r\nThis package provides a Python interface to VibrationVIEW, allowing for:\r\n\r\n- Test automation and control (start, stop, pause)\r\n- Data acquisition and analysis\r\n- Window management\r\n- Channel configuration\r\n- Input/output monitoring\r\n- File operations\r\n- Specialized test controls (e.g., sine sweep functions)\r\n\r\nThe API wraps the COM interface provided by VibrationVIEW to enable seamless integration with Python scripts and applications.\r\n\r\n## Installation\r\n\r\n```bash\r\npip install vibrationview-api\r\n```\r\n\r\n### Requirements\r\n\r\n- Windows operating system (compatible with Windows 10 and Windows 11)\r\n- VibrationVIEW software installed\r\n- VibrationVIEW automation option (VR9604) - OR - VibrationVIEW may be run in Simulation mode without any additional hardware or software\r\n- Python 3.7 or higher\r\n- pywin32 (automatically installed as a dependency)\r\n- psutil (automatically installed as a dependency)\r\n\r\n## Quick Start\r\n\r\n```python\r\nfrom vibrationviewapi import VibrationVIEW\r\n\r\n# Test basic functionality\r\ntry:\r\n # Connect to VibrationVIEW\r\n vv = VibrationVIEW()\r\n \r\n # Print connection status\r\n if vv.vv is None:\r\n print(\"Failed to connect to VibrationVIEW\")\r\n else:\r\n print(\"Connected to VibrationVIEW\")\r\n \r\n # Get software version\r\n version = vv.GetSoftwareVersion()\r\n print(f\"VibrationVIEW version: {version}\")\r\n \r\n # Get hardware info\r\n input_channels = vv.GetHardwareInputChannels()\r\n output_channels = vv.GetHardwareOutputChannels()\r\n print(f\"Hardware: {input_channels} input channels, {output_channels} output channels\")\r\n \r\nexcept Exception as e:\r\n print(f\"Error: {e}\")\r\nfinally:\r\n # Clean up resources\r\n if 'vv' in locals() and vv is not None:\r\n vv.close()\r\n print(\"Connection closed\")\r\n\r\n## Key Features\r\n\r\n### Test Control\r\n- Open, start, stop, and pause tests\r\n- Run tests from specified file paths\r\n- Monitor test status\r\n\r\n### Data Acquisition\r\n- Retrieve vector data (time, frequency, waveform)\r\n- Get channel readings and control values\r\n- Access vector properties (units, labels, length)\r\n\r\n### Window Management\r\n- Minimize, maximize, restore and activate application windows\r\n- Control window state programmatically\r\n\r\n### Channel Configuration\r\n- Read and configure channel settings\r\n- Access TEDS data\r\n- Configure input properties (sensitivity, coupling, etc.)\r\n\r\n### Sine-Specific Functions\r\n- Control sweep direction and rate\r\n- Adjust sweep and demand multipliers\r\n- Hold at specific frequencies or resonances\r\n\r\n### File Operations\r\n- Save test data\r\n- Export data to various formats using the command-line utilities\r\n\r\n## API Documentation\r\n\r\nFor detailed documentation of all available methods, please visit:\r\n[VibrationVIEW API Documentation](https://www.vibrationresearch.com/vibrationview-api/)\r\n\r\n## Examples\r\n\r\n### Running a Sine Test and Recording Data\r\n\r\n```python\r\nfrom vibrationviewapi import VibrationVIEW\r\nimport time\r\nimport os\r\n\r\n# Connect to VibrationVIEW\r\nvv = VibrationVIEW()\r\n\r\n# Open a sine test\r\nvv.OpenTest(\"C:\\\\VibrationVIEW\\\\Profiles\\\\sine_sweep.vsp\")\r\n\r\n# Start the test\r\nvv.StartTest()\r\n\r\n# Wait for test to enter running state\r\ntime.sleep(2)\r\n\r\n# Start recording\r\nvv.RecordStart()\r\n\r\n# Let test run for 30 seconds\r\ntime.sleep(30)\r\n\r\n# Stop recording\r\nvv.RecordStop()\r\n\r\n# Get the recording filename\r\nrecording_file = vv.RecordGetFilename()\r\nprint(f\"Recording saved to: {recording_file}\")\r\n\r\n# Stop the test\r\nvv.StopTest()\r\n```\r\n\r\n### Accessing Channel Information\r\n\r\n```python\r\nfrom vibrationviewapi import VibrationVIEW\r\n\r\n# Connect to VibrationVIEW\r\nvv = VibrationVIEW()\r\n\r\n# Get number of hardware channels\r\nnum_channels = vv.GetHardwareInputChannels()\r\nprint(f\"Hardware has {num_channels} input channels\")\r\n\r\n# Print information for each channel\r\nfor i in range(num_channels):\r\n channel_num = i + 1 # 1-based for display\r\n label = vv.ChannelLabel(i)\r\n unit = vv.ChannelUnit(i)\r\n sensitivity = vv.InputSensitivity(i)\r\n \r\n print(f\"Channel {channel_num}:\")\r\n print(f\" Label: {label}\")\r\n print(f\" Unit: {unit}\")\r\n print(f\" Sensitivity: {sensitivity}\")\r\n \r\n # Try to get TEDS information if available\r\n teds_info = vv.Teds(i)\r\n if teds_info and teds_info[0] and \"Teds\" in teds_info[0]:\r\n print(f\" TEDS data available: {len(teds_info[0]['Teds'])} entries\")\r\n```\r\n\r\n",
"bugtrack_url": null,
"license": "# VibrationVIEW Python API License\r\n \r\n ## MIT License with VibrationVIEW Attribution\r\n \r\n Copyright (c) 2025 Vibration Research Corporation\r\n \r\n Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\r\n \r\n 1. The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\r\n \r\n 2. This code is designed to work with VibrationVIEW software, which is a commercial product. Users of this Software must have a valid license for VibrationVIEW software to use this Software for its intended purpose.\r\n \r\n 3. All product and company names are the registered trademarks of their original owners. VibrationVIEW is a registered trademark of Vibration Research Corporation.\r\n \r\n 4. Any redistributions, modifications, or derivative works of this Software must include attribution to the original authors and a statement that the Software works with VibrationVIEW.\r\n \r\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
"summary": "Python API for VibrationVIEW software",
"version": "0.1.5",
"project_urls": {
"Bug Tracker": "https://github.com/vibrationresearch/vibrationview-api/issues",
"Documentation": "https://www.vibrationresearch.com/vibrationview-api/",
"Homepage": "https://www.vibrationresearch.com/",
"Source Code": "https://github.com/vibrationresearch/vibrationview-api"
},
"split_keywords": [
"vibration",
" testing",
" vibrationview",
" api"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "33c80d8e4ddce86a326decc72f0a7c388cb2d0691334503b158369149c03995a",
"md5": "d9fa3939a0508cd12c7289f30d4da1f5",
"sha256": "89f0eaa7418be21e6dcff172666babca686686b007fe5847c0aa54c85d641cf0"
},
"downloads": -1,
"filename": "vibrationview_api-0.1.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d9fa3939a0508cd12c7289f30d4da1f5",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 16696,
"upload_time": "2025-08-04T19:48:01",
"upload_time_iso_8601": "2025-08-04T19:48:01.335685Z",
"url": "https://files.pythonhosted.org/packages/33/c8/0d8e4ddce86a326decc72f0a7c388cb2d0691334503b158369149c03995a/vibrationview_api-0.1.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-04 19:48:01",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "vibrationresearch",
"github_project": "vibrationview-api",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "pywin32",
"specs": [
[
"==",
"310"
]
]
}
],
"lcname": "vibrationview-api"
}