Difference between revisions of "REL1000 User Guide"

From Phidgets Support
Jump to: navigation, search
(Using Your Own Program)
(Technical Details)
Line 32: Line 32:
==Technical Details==
==Technical Details==
{{DigitalOutput_Failsafe_Technical|REL1000|110||switches the relay contact to the ''Normally-Closed'' position}}
=== Safety ===
=== Safety ===

Revision as of 20:06, 25 January 2019

Getting Started

Welcome to the REL1000 user guide! In order to get started, make sure you have the following hardware on hand:

Next, you will need to connect the pieces:

REL1000 Functional.jpeg
  1. Connect the REL1000 to the VINT Hub using the Phidget cable.
  2. Connect the VINT Hub to your computer with a USB cable.
  3. Connect the circuits you're switching to the terminal blocks on the REL1000. If you want the circuit to be closed by default when the relay is not energized, connect the two ends of the circuit to the NC and COM terminals. If you want the circuit to be open by default, connect it to the NO and COM terminals instead. It doesn't matter which end of the circuit is connected connected to each of the two terminals in either case.
  4. Connect the power supply to the barrel jack on the REL1000.

Now that you have everything together, let's start using the REL1000!

Using the REL1000

Phidget Control Panel

In order to demonstrate the functionality of the REL1000, the Phidget Control Panel running on a Windows machine will be used.

The Phidget Control Panel is available for use on both macOS and Windows machines.


To open the Phidget Control Panel on Windows, find the Ph.jpg icon in the taskbar. If it is not there, open up the start menu and search for Phidget Control Panel

Windows PhidgetTaskbar.PNG


To open the Phidget Control Panel on macOS, open Finder and navigate to the Phidget Control Panel in the Applications list. Double click on the Ph.jpg icon to bring up the Phidget Control Panel.

For more information, take a look at the getting started guide for your operating system:

Linux users can follow the getting started with Linux guide and continue reading here for more information about the REL1000.

First Look

After plugging the REL1000 into your computer and opening the Phidget Control Panel, you will see something like this:

REL1000 Panel.jpg

The Phidget Control Panel will list all connected Phidgets and associated objects, as well as the following information:

  • Serial number: allows you to differentiate between similar Phidgets.
  • Channel: allows you to differentiate between similar objects on a Phidget.
  • Version number: corresponds to the firmware version your Phidget is running. If your Phidget is listed in red, your firmware is out of date. Update the firmware by double-clicking the entry.

The Phidget Control Panel can also be used to test your device. Double-clicking on an object will open an example.

Relay Output

Double-click on a Digital Output object labelled Power Relay in order to run the example:

REL1000 RelayOutput Example.jpg

General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • Toggle the state of the relay by pressing the button.

Finding The Addressing Information

Before you can access the device in your own code, and from our examples, you'll need to take note of the addressing parameters for your Phidget. These will indicate how the Phidget is physically connected to your application. For simplicity, these parameters can be found by clicking the button at the top of the Control Panel example for that Phidget.

The locate Phidget button is found in the device information box

In the Addressing Information window, the section above the line displays information you will need to connect to your Phidget from any application. In particular, note the Channel Class field as this will be the API you will need to use with your Phidget, and the type of example you should use to get started with it. The section below the line provides information about the network the Phidget is connected on if it is attached remotely. Keep track of these parameters moving forward, as you will need them once you start running our examples or your own code.

All the information you need to address your Phidget

Using Your Own Program

You are now ready to start writing your own code for the device. The best way to do that is to start from our Phidget is compatible with the [https://www.phidgets.com/?view=code_samples&class=DigitalOutput DigitalOutput Examples. Code Samples].

Select your programming language of choice from the drop-down list to get an example for your device. You can use the options provided to further customize the example to best suit your needs.

link=https://www.phidgets.com?view=code_samples&product_id=This Phidget is compatible with the DigitalOutput Examples.

Once you have your example, you will need to follow the instructions on the page for your programming language to get it running. To find these instructions, select your programming language from the Programming Languages page.

Technical Details

Failsafe Feature

Starting from firmware version 110, using Phidget22 library versions and later, this device supports the use of a failsafe feature to put your device in a safe state should your program hang or crash.

With this feature, each Digital Output channel on this device has its own independently settable failsafe timer.

If the failsafe is not enabled, the device will behave as it did before the addition of this feature, maintaining the last state or duty cycle it received until it is explicitly told to stop.

Enabling the failsafe feature for a channel starts a recurring failsafe timer. Once the failsafe timer is enabled, it must be reset within the specified time or the channel will enter a failsafe state. Resetting the failsafe timer will reload the timer with the specified failsafe time, starting when the message to reset the timer is received by the Phidget.

For example: if the failsafe is enabled with a failsafe time of 1000ms, you will have 1000ms to reset the failsafe timer. Every time the failsafe timer is reset, you will have 1000ms from that time to reset the failsafe again.

Diagram of the failsafe behaviour when set to 1000ms

If the failsafe timer is not reset before it runs out, the channel will enter a failsafe state. For Digital Output channels, this sets the output to a FALSE state. On the REL1000 this switches the relay contact to the Normally-Closed position. Once the channel enters the failsafe state, it will reject any further input until the channel is reopened.

To prevent the channel from falsely entering the failsafe state, we recommend resetting the failsafe timer as frequently as is practical for your applicaiton. A good rule of thumb is to not let more than a third of the failsafe time pass before resetting the timer.

Once the failsafe has been enabled, it cannot be disabled by any means other than closing and reopening the channel.

When you use a failsafe in your program, we strongly recommend setting up an error event handler to catch the Failsafe Error Event, to allow your program to catch the failsafe event.

If you want your program to try to automatically recover from a failsafe state, you can close and re-open the channel from the error event handler after determining a failsafe condition caused the event.



The relays on the REL1000 are SPDT (Single pole, double throw). This means there is a common pin (C), a normally open pin (NO) and a normally closed pin (NC). When the relay is unpowered, the switch will be resting in the NC position, as seen in the diagram. When the relay's Digital Output object is toggled in software, it will switch to the NO position. If the Digital Output object is closed (using the Close() method), the relay will always return to the NC position. For this reason, it is considered a best practice to call Close() at the end of your program on in the 'closing' portion of your project.

If communication between the REL1000 and your computer is broken (e.g. if the Phidget cable is unplugged), the relay will not change state. You will, however, get a detach event for the attached channels of that Phidget, so you may want to handle this case in your Digital Output detach handler. Since communication is already interrupted at this point, you can't tell the Digital Output to return to the NC position, but you can set a warning in your program to notify someone to come and reset the system manually.

Further Reading

You can read more about how mechanical relays work on our Mechanical Relay Primer.

What to do Next

  • Programming Languages - Find your preferred programming language here and learn how to write your own code with Phidgets!
  • Phidget Programming Basics - Once you have set up Phidgets to work with your programming environment, we recommend you read our page on to learn the fundamentals of programming with Phidgets.