Hi, Kyle.
It looks like you are missing the “Priority” parameter in the OUT-field.
BACnet uses a 16 slot priority-array when writing values. 16 being the lowest priority and 1 being the highest priority. So essentially a BACnet output object (e.g., Analog-Output) could have 16 different values written to its Present-Value property. But the Present-Value property will only respond to the value that was written with the lowest number (which is the highest priority) as the priority.
Below is an example of what we use here. Take note that I am writing the chilled water setpoint at the lowest priority, Priority-16.
record(ao, "CF_CU:Chllr_CU01:BAS_ChilledWaterSetpoint"){
field(DESC,"")
field(ASG,"CUB")
field(DTYP, "BacNet")
#/* field(OUT, "@<device name> <object type> <object instance> <property id> <optional object array index[?]>*/
field(OUT, "@c1 2 1901 85 p16")
field(SCAN, "Passive")
field(PREC,"1")
field(LINR,"NO CONVERSION")
field(EGU,"F")
field(ADEL,"0.05")
}
Let me know if this helps!
Webb, Steven B. (Brad Webb)
Process Controls/Software Engineer
Bldg: 8600
Rm: C-188
MS: 6485
865-924-5877
[email protected] ([email protected])
Spallation Neutron Source
> On Dec 17, 2016, at 1:00 PM, [email protected] wrote:
>
> Send Tech-talk mailing list submissions to
> [email protected]
>
> To subscribe or unsubscribe via the World Wide Web, visit
> https://mailman.aps.anl.gov/mailman/listinfo/tech-talk
> or, via email, send a message with subject or body 'help' to
> [email protected]
>
> You can reach the person managing the list at
> [email protected]
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Tech-talk digest..."
>
>
> Today's Topics:
>
> 1. SRS RGA 100 protocol files (King, Virginia Elizabeth)
> 2. BACnet driver writing values to a device (Kyle Lanclos)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Fri, 16 Dec 2016 22:13:54 +0000
> From: "King, Virginia Elizabeth" <[email protected]>
> To: "[email protected]" <[email protected]>
> Subject: SRS RGA 100 protocol files
> Message-ID:
> <[email protected]>
> Content-Type: text/plain; charset="us-ascii"
>
> Has anyone used the stream device protocol with an SRS RGA100 and if so, do you have a protocol file example, database, or any other code/examples , they would be appreciated.
>
> Thanks,
>
> Virginia King
> Controls Software Engineer
> AOT-IC, MS H820
> Los Alamos National Laboratory
> Los Alamos, NM 87545
> ph: (505) 665-7931
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://mailman.aps.anl.gov/pipermail/tech-talk/attachments/20161216/6973f636/attachment.html>
>
> ------------------------------
>
> Message: 2
> Date: Fri, 16 Dec 2016 16:54:41 -1000
> From: Kyle Lanclos <[email protected]>
> To: [email protected]
> Subject: BACnet driver writing values to a device
> Message-ID:
> <CA+Gx85SK2Xg7RNyGXVXjD0fNPBnrcN6zg6M809n6Su0yPkRphg@mail.gmail.com>
> Content-Type: text/plain; charset=UTF-8
>
> I'm trying to communicate with an Alerton BCM-ETH controller via
> BACnet. I'm using the ORNL driver to do so:
>
> http://ics-web.sns.ornl.gov/webb/BACnet/
>
> I can successfully read analog and boolean values. My IOC will poll
> each value at the configured interval, and I can read/write the
> channels with impunity. However, my write operations are not resulting
> in any extra communication with the controller (as seen by wireshark).
> I see the poll requests to read the present value but I never see
> anything attempting to _set_ the present value.
>
> I can write values using a demo program that's included with the
> bacnet-stack library. I see the packets on wireshark, but any changes
> requested aren't necessarily reflected in my EPICS channels. Not sure
> what to make of that.
>
> I'm hoping there's something simple that I'm doing wrong. Here are
> some example sections of my IOC initialization sequence.
>
>
> epicsEnvSet("EPICS_BASE","/usr/local/epics/default/base")
> epicsEnvSet("IOC","alerton")
>
> dbLoadDatabase "$(EPICS_BASE)/dbd/epics2bacnet.dbd"
> epics2bacnet_registerRecordDeviceDriver pdbbase
>
> bacnetDriverInterfaceName("enp0s20f0u4u4u2")
> bacnetDriverPortNumber(47808)
>
> bacnetDefineServer("Alerton", 10001, 47808, 25)
>
> bacnetListServerInfo(5)
> bacnetDriverStart(1)
> bacnetDriverVerbosity(1)
>
> dbLoadRecords("alerton.db", "IOC_NAME=$(IOC)")
> iocInit
>
> ...and then a pair of records from the included database:
>
> record(ao, "$(IOC_NAME):A000_VAL"){
> field(DTYP, "BacNet")
> field(OUT, "@Alerton 2 0 85")
> field(SCAN, ".5 second")
> }
>
> record(bo, "$(IOC_NAME):B000_VAL"){
> field(DTYP, "BacNet")
> field(OUT, "@Alerton 5 0 85")
> field(SCAN, ".5 second")
> field(ZNAM, "False")
> field(ONAM, "True")
> }
>
>
> Thanks in advance for any guidance. I apologize if I don't get back to
> you right away, I won't have access to this equipment for a while.
>
> --Kyle
>
>
> ------------------------------
>
> _______________________________________________
> Tech-talk mailing list [email protected]
> https://mailman.aps.anl.gov/mailman/listinfo/tech-talk
>
>
> End of Tech-talk Digest, Vol 10, Issue 475
> ******************************************
>
- Navigate by Date:
- Prev:
BACnet driver writing values to a device Kyle Lanclos
- Next:
Re: SRS RGA 100 protocol files Geng, Xiaosong
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
<2016>
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
BACnet driver writing values to a device Kyle Lanclos
- Next:
Perspective sharing Patard Charles-Henri
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
<2016>
2017
2018
2019
2020
2021
2022
2023
2024
|