Alturos.PanTilt 1.0.4

Pan Tilt control

There is a newer version of this package available.
See the version list below for details.
Install-Package Alturos.PanTilt -Version 1.0.4
dotnet add package Alturos.PanTilt --version 1.0.4
<PackageReference Include="Alturos.PanTilt" Version="1.0.4" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Alturos.PanTilt --version 1.0.4
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Alturos.PanTilt

This project delivers an interface for general pan tilt communication. Additionally we deliver an implementation for Eneo VPT-601 unit.
We have three different communication providers udp/tcp/serial available.

The library supports the following primary features

  • [x] Move to absolute position
  • [x] Move with relative speed
  • [x] Position feedback
  • [x] Get limits

And some Eneo special features

  • [x] Set limits
  • [x] Get temperature
  • [x] Set relay

Examples

Move to position pan 50° and tilt 0° with udp communication
var ipAddress = IPAddress.Parse("192.168.1.10");
using (ICommunication communication = new UdpNetworkCommunication(ipAddress, 4003, 4003))
using (IPanTiltControl control = new EneoPanTiltControl(communication))
{
	control.PanAbsolute(50);
	control.TiltAbsolute(0);
}
Move to position pan 50° and tilt 0° with tcp communication
var ipAddress = IPAddress.Parse("192.168.1.10");
using (ICommunication communication = new TcpNetworkCommunication(new IPEndPoint(ipAddress, 4003)))
using (IPanTiltControl control = new EneoPanTiltControl(communication))
{
	control.PanAbsolute(50);
	control.TiltAbsolute(0);
}
Move to position pan 50° and tilt 0° with serial communication
var serialPort = "COM1";
using (ICommunication communication = new SerialPortCommunication(serialPort))
using (IPanTiltControl control = new EneoPanTiltControl(communication))
{
	control.PanAbsolute(80);
	control.TiltAbsolute(0);
}
Activate pt head position feedback
var serialPort = "COM1";
using (ICommunication communication = new SerialPortCommunication(serialPort))
using (IPanTiltControl control = new EneoPanTiltControl(communication))
{
	control.Start();
	Thread.Sleep(200); //delay for response, only need if you stop very fast
	var currentPosition = control.GetPosition();
	//example: {0,02/0,98}
	control.Stop();
}

Alturos.PanTilt

This project delivers an interface for general pan tilt communication. Additionally we deliver an implementation for Eneo VPT-601 unit.
We have three different communication providers udp/tcp/serial available.

The library supports the following primary features

  • [x] Move to absolute position
  • [x] Move with relative speed
  • [x] Position feedback
  • [x] Get limits

And some Eneo special features

  • [x] Set limits
  • [x] Get temperature
  • [x] Set relay

Examples

Move to position pan 50° and tilt 0° with udp communication
var ipAddress = IPAddress.Parse("192.168.1.10");
using (ICommunication communication = new UdpNetworkCommunication(ipAddress, 4003, 4003))
using (IPanTiltControl control = new EneoPanTiltControl(communication))
{
	control.PanAbsolute(50);
	control.TiltAbsolute(0);
}
Move to position pan 50° and tilt 0° with tcp communication
var ipAddress = IPAddress.Parse("192.168.1.10");
using (ICommunication communication = new TcpNetworkCommunication(new IPEndPoint(ipAddress, 4003)))
using (IPanTiltControl control = new EneoPanTiltControl(communication))
{
	control.PanAbsolute(50);
	control.TiltAbsolute(0);
}
Move to position pan 50° and tilt 0° with serial communication
var serialPort = "COM1";
using (ICommunication communication = new SerialPortCommunication(serialPort))
using (IPanTiltControl control = new EneoPanTiltControl(communication))
{
	control.PanAbsolute(80);
	control.TiltAbsolute(0);
}
Activate pt head position feedback
var serialPort = "COM1";
using (ICommunication communication = new SerialPortCommunication(serialPort))
using (IPanTiltControl control = new EneoPanTiltControl(communication))
{
	control.Start();
	Thread.Sleep(200); //delay for response, only need if you stop very fast
	var currentPosition = control.GetPosition();
	//example: {0,02/0,98}
	control.Stop();
}

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
2.0.0 99 3/26/2019
1.0.5 110 2/8/2019
1.0.4 137 1/7/2019
1.0.3 239 5/24/2018