Help
  • Explore Community
  • Get Started
  • Ask the Community
  • How-To & Best Practices
  • Contact Support
Notifications
Login / Register
Community
Community
Notifications
close
  • Forums
  • Knowledge Center
  • Events & Webinars
  • Ideas
  • Blogs
Help
Help
  • Explore Community
  • Get Started
  • Ask the Community
  • How-To & Best Practices
  • Contact Support
Login / Register
Sustainability
Sustainability

Join our "Ask Me About" community webinar on May 20th at 9 AM CET and 5 PM CET to explore cybersecurity and monitoring for Data Center and edge IT. Learn about market trends, cutting-edge technologies, and best practices from industry experts.
Register and secure your Critical IT infrastructure

Share data between standard Continuum controllers and Continuum BACnet controllers

Building Automation Knowledge Base

Schneider Electric Building Automation Knowledge Base is a self-service resource to answer all your questions about EcoStruxure Building suite, Andover Continuum, Satchwell, TAC…

cancel
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • Home
  • Schneider Electric Community
  • Knowledge Center
  • Building Automation Knowledge Base
  • Share data between standard Continuum controllers and Continuum BACnet controllers
Options
  • Bookmark
  • Subscribe
  • Email to a Friend
  • Printer Friendly Page
  • Report Inappropriate Content
Invite a Co-worker
Send a co-worker an invite to the portal.Just enter their email address and we'll connect them to register. After joining, they will belong to the same company.
You have entered an invalid email address. Please re-enter the email address.
This co-worker has already been invited to the Exchange portal. Please invite another co-worker.
Please enter email address
Send Invite Cancel
Invitation Sent
Your invitation was sent.Thanks for sharing Exchange with your co-worker.
Send New Invite Close

Related Forums

  • Intelligent Devices Forum

Previous Next
Contributors
  • DavidFisher
    DavidFisher
  • sesa119747
    sesa119747
  • AdamSteele
    AdamSteele
  • Product_Support
    Product_Support
  • sesa101527
    sesa101527

Invite a Colleague

Found this content useful? Share it with a Colleague!

Invite a Colleague Invite
Back to Building Automation Knowledge Base
Options
  • Bookmark
  • Subscribe
  • Email to a Friend
  • Printer Friendly Page
  • Report Inappropriate Content
2 Likes
3561 Views

Link copied. Please paste this link to share this article on your social media post.

Trying to translate this page to your language?
Select your language from the translate dropdown in the upper right. arrow
Translate to: English
  • (Français) French
  • (Deutsche) German
  • (Italiano) Italian
  • (Português) Portuguese
  • (Русский) Russian
  • (Español) Spanish

Share data between standard Continuum controllers and Continuum BACnet controllers

Picard Product_Support
‎2018-09-06 02:59 PM

Issue

  • How do I share data between standard Continuum controllers and Continuum BACnet controllers?
  • What communication method is used (COV, Import/export, or point to point)?
  • What problems can I encounter?

Product Line

Andover Continuum

Environment

  • Continuum Controllers (CX9200, CX9400, CX9900,CX9702, CX9680, bCX9640, ACX5720, ACX5740)
  • Continuum BACnet Controllers (b4920, bCX4040)

Cause

All communication between Continuum controllers and Continuum BACnet controllers is done using point to point protocol. Since BACnet controllers do not support Import/export and Continuum controllers do not support COV, point to point is the only common method to communicate.

Resolution

The method of programming the data sharing can be the same as standard Continuum programming, however because of the point to point protocol a specific method should be used. Using typical Continuum programming techniques, you would create a mirrored point in the BACnet controller (a BCX for instance). You would then write a PE program in the BCX that mirrors the point, for instance:

Line Mirror
BCX DataPoint1 = CX/Infinet/DataPoint1
goto Mirror
Line E:
goto mirror

This method would perform a point to point communication every BCX scan and retrieve the data whether it has changed or not. It will create a lot of unnecessary network traffic and slow the scans of both controllers. The line E is necessary because with a point to point communication, the program will disable if the target controller temporarily goes offline.

Now consider if you were mirroring many points between the systems for instance you were using the BCX as a BACnet gateway for the Continuum system. That same program would have many points that are being transferred. You would also write multiple programs because of the number of points being polled. The net result of this programming method would be that the entire system would be brought to its knees! Extremely slow scan rates in both controllers because these point to point data requests have to be completed end to end during the scan. Congested Infinet communications because to get the Infinet points we go all the way down the 19.2K Baud Infinet to get the data. The system would just plain no longer function correctly.

The only reasonable method to accomplish this type of data transfer would be for the owner of the data that you want to transfer to the other controller sends the data to that controller, and only on an as needed basis, such as a change in its value. Therefore in the scenario described above where you want to mirror points in a BACnet BCX from a Continuum system, you would write the transfer program(s) in the CX controller, and within that program use a local variable for each transferred point to allow you to know if its value has changed since the last transfer, and not retransmit if the value is the same, thereby significantly decreasing network traffic and burden on the system. This method has the added benefit of eliminating the need to clog up the Infinet network, because the program in the CX automatically creates an import/export relationship between the CX and the Infinet controller's points so the normal export broadcast will transfer the data to the CX. One example of the program in the CX to perform the data transfer is as follows:

Numeric num1

Line Mirror
  If num1<>CX/Infinet/datapoint1 then
    set BCX dataPoint1 to CX/Infinet/datapoint1
    num1 = CX/Infinet/datapoint1
  endif
  goto Mirror

Line E:
if TS>5 then goto Mirror

You could also streamline the programs using such methods as creating an InfinityFunction that would be called to minimize the redundant portions of the data comparison and transfer in the programs for multiple point transfers. The function could be named “Exporter” look like this:

Arg 1 RemotePoint
Arg 2 LocalPoint
Arg 3 TestPoint

If TestPoint<> LocalPoint then
  Set RemotePoint to LocalPoint
  TestPoint= LocalPoint
endif
Return

And now any point that you want to be exported would call this function so the above program would be reduced to:

Numeric num1, ..... numX

Line Mirror
Exporter (BCX dataPoint1, CX/Infinet/datapoint1, num1)
.
.
Exporter (BCX dataPointX, CX/Infinet/datapointX, numX)
goto Mirror

Line E:
if TS>5 then goto mirror

After the initial scan when we send all the current data to the BCX, only changed data would be sent thereafter. This syntax would be repeated for each point that you wanted to mirror. This program is setup to be looping. You could create a similar program to be fallthru and trigger it from a minute or seconds system variable. If kept looping it would be recommended to go to a delay line between scans if there was a lot of data transfer going on. There should also be many programs like this if there is a lot of data to be transferred for a couple of reasons. First, if for some reason one of the points could not be transferred due to a temporary comm loss, the program would disable, go to line E and restart from the beginning, not executing any data transfer on the points below the one that failed. Second, if you were transferring many points, you would most likely exceed the maximum file size.

Always be cautious as to how much data you try to transfer, and how often. There is no fixed limit per controller, but system performance will degrade proportionally to the speed and amount of data being transferred.

As an additional note, it would also be extremely beneficial to put thresholds on the exported points to decrease un-necessary traffic.

Labels (1)
Labels:
  • Andover Continuum
Tags (1)
  • Find more articles tagged with:
  • 2561
Was this article helpful? Yes No
100% helpful (2/2)

Link copied. Please paste this link to share this article on your social media post.

To The Top!

Forums

  • APC UPS Data Center Backup Solutions
  • EcoStruxure IT
  • EcoStruxure Geo SCADA Expert
  • Metering & Power Quality
  • Schneider Electric Wiser

Knowledge Center

Events & webinars

Ideas

Blogs

Get Started

  • Ask the Community
  • Community Guidelines
  • Community User Guide
  • How-To & Best Practice
  • Experts Leaderboard
  • Contact Support
Brand-Logo
Subscribing is a smart move!
You can subscribe to this board after you log in or create your free account.
Forum-Icon

Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.

Register today for FREE

Register Now

Already have an account? Login

Terms & Conditions Privacy Notice Change your Cookie Settings © 2025 Schneider Electric

This is a heading

With achievable small steps, users progress and continually feel satisfaction in task accomplishment.

Usetiful Onboarding Checklist remembers the progress of every user, allowing them to take bite-sized journeys and continue where they left.

of