Results 1 to 8 of 8
  1. #1
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    780

    Carrier Best ++ Programming Manual?

    I was wondering if someone may have some sort of Best ++ programming manual available? Or maybe some examples of some programs? I want to see some examples so I can see Carrier's syntax and there commands.

    Thanks for the help!
    J. King

  2. #2
    Join Date
    Jun 2006
    Location
    New Jersey
    Posts
    4,336
    Here's the 250 page reference manual.

    What kinda of example programming do you want?
    Attached Images Attached Images

  3. #3
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    780
    Quote Originally Posted by ascj View Post
    Here's the 250 page reference manual.

    What kinda of example programming do you want?
    just about anything really. I just want to see some examples to get an idea of how Carrier programming is laid out. Maybe some math programs, or reset programs for boilers or AHUs.

    Thanks for the manual.

    I am getting ready to set up a 1600 universal controller. Is there a manual that may help me understand what all the parameters in each of the tables means?

    Thanks for you help.
    J. King

  4. #4
    Join Date
    Dec 2006
    Location
    Washington, DC
    Posts
    510
    Quote Originally Posted by apprentice3 View Post
    just about anything really. I just want to see some examples to get an idea of how Carrier programming is laid out. Maybe some math programs, or reset programs for boilers or AHUs.

    Thanks for the manual.

    I am getting ready to set up a 1600 universal controller. Is there a manual that may help me understand what all the parameters in each of the tables means?

    Thanks for you help.
    Are you working with a Universal Controller [UC16] or a Comfort Controller [CC1600]. There is a difference as you can't use BEST++ on a UC16.
    Quote Originally Posted by Qui-Gon Jinn (Star Wars Episode 1)
    "The ablilty to speak does not make you intelligent!"

  5. #5
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    780
    Quote Originally Posted by Balibe View Post
    Are you working with a Universal Controller [UC16] or a Comfort Controller [CC1600]. There is a difference as you can't use BEST++ on a UC16.
    I will have to check and see what is on the job when I go out there.

    I do have a question regarding Best ++. When I am referencing certain variables in a controller do I have to type in the point name exactly as it appears in the CCN table in the comfort controller? Like for instance if I want to reference the supply air temperature, and the point name is SAT. Do I just reference SAT in my program?
    J. King

  6. #6
    Join Date
    Dec 2006
    Location
    Washington, DC
    Posts
    510
    Quote Originally Posted by apprentice3 View Post
    I will have to check and see what is on the job when I go out there.

    I do have a question regarding Best ++. When I am referencing certain variables in a controller do I have to type in the point name exactly as it appears in the CCN table in the comfort controller? Like for instance if I want to reference the supply air temperature, and the point name is SAT. Do I just reference SAT in my program?
    A UC16 is beige, a CC1600 is white. The UC16 is an entry level controller with a set of built-in algorithms to perform tasks with 8ins/8outs, it will not hold any BEST++. The CC1600 is a higher level, no expandable controller so it has 8ins/8outs. The built-in algorithms are larger and can handle most programming without BEST++.

    I can take a CC1600 and program cooling towers, chillers, ahu's, etc and do it most of the time without BEST++. I typically only need it when there is an odd control sequence.

    Below is an example of a pump lead/lag I use in conjunction to a built-in pump algorithm. The top section in red loads the variables you need in the BEST++, the under TASK in blue it executes.

    CWP3_SS & CWP4_SS are the pump start/stops, CWP3_ST & CWP4_ST are the pump status's and PUMP_02 is loaded to read/write certain variables in the built-in pump algorithm

    PROGRAM PH_6 {PH_6,"CWP Pump Fail",0}

    CONNECT CWP1SS AS DISC_OUTPUT {CWP3_SS,0,79}
    CONNECT CWP2SS AS DISC_OUTPUT {CWP4_SS,0,79}
    CONNECT CWP1ST AS SENSED_DISC_INPUT {CWP3_ST,0,75}
    CONNECT CWP2ST AS SENSED_DISC_INPUT {CWP4_ST,0,75}
    CONNECT CWP AS DO_PUMP_CONTROL {PUMP_02,0,112}

    TASK CWP_RESET {,,5,8,1,60}

    AUTO CWP1SS
    AUTO CWP2SS

    STEP FAILCHECK
    IF CWP.PUMP.FAIL EQ 1 THEN
    GOTO ONE
    ENDIF
    DELAY CWP_RESET (1)
    REPEAT

    STEP ONE
    TURNON CWP1SS
    TURNON CWP2SS
    IF CWP1ST EQ 1 THEN
    DELAY CWP_RESET (5)
    TURNOFF CWP2SS
    DELAY CWP_RESET (5)
    CWP.PUMP.ROTATNOW = 1
    DELAY CWP_RESET (10)
    WHEN CWP.PUMP.FAIL EQ 0
    GOTO TWO
    ENDIF
    IF CWP2ST EQ 1 THEN
    DELAY CWP_RESET (5)
    TURNOFF CWP1SS
    DELAY CWP_RESET (5)
    CWP.PUMP.ROTATNOW = 1
    DELAY CWP_RESET (10)
    WHEN CWP.PUMP.FAIL EQ 0
    GOTO TWO
    ENDIF
    DELAY CWP_RESET (2)
    REPEAT

    STEP TWO
    IF (CWP1SS EQ 1) AND (CWP.PUMP.LEADPMP EQ 2) THEN
    CWP.PUMP.ROTATNOW = 1
    ENDIF
    IF (CWP2SS EQ 1) AND (CWP.PUMP.LEADPMP EQ 1) THEN
    CWP.PUMP.ROTATNOW = 1
    ENDIF
    AUTO CWP1SS
    AUTO CWP2SS

    ENDTASK
    Quote Originally Posted by Qui-Gon Jinn (Star Wars Episode 1)
    "The ablilty to speak does not make you intelligent!"

  7. #7
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    780
    Quote Originally Posted by Balibe View Post
    A UC16 is beige, a CC1600 is white. The UC16 is an entry level controller with a set of built-in algorithms to perform tasks with 8ins/8outs, it will not hold any BEST++. The CC1600 is a higher level, no expandable controller so it has 8ins/8outs. The built-in algorithms are larger and can handle most programming without BEST++.

    I can take a CC1600 and program cooling towers, chillers, ahu's, etc and do it most of the time without BEST++. I typically only need it when there is an odd control sequence.

    Below is an example of a pump lead/lag I use in conjunction to a built-in pump algorithm. The top section in red loads the variables you need in the BEST++, the under TASK in blue it executes.

    CWP3_SS & CWP4_SS are the pump start/stops, CWP3_ST & CWP4_ST are the pump status's and PUMP_02 is loaded to read/write certain variables in the built-in pump algorithm

    PROGRAM PH_6 {PH_6,"CWP Pump Fail",0}

    CONNECT CWP1SS AS DISC_OUTPUT {CWP3_SS,0,79}
    CONNECT CWP2SS AS DISC_OUTPUT {CWP4_SS,0,79}
    CONNECT CWP1ST AS SENSED_DISC_INPUT {CWP3_ST,0,75}
    CONNECT CWP2ST AS SENSED_DISC_INPUT {CWP4_ST,0,75}
    CONNECT CWP AS DO_PUMP_CONTROL {PUMP_02,0,112}

    TASK CWP_RESET {,,5,8,1,60}

    AUTO CWP1SS
    AUTO CWP2SS

    STEP FAILCHECK
    IF CWP.PUMP.FAIL EQ 1 THEN
    GOTO ONE
    ENDIF
    DELAY CWP_RESET (1)
    REPEAT

    STEP ONE
    TURNON CWP1SS
    TURNON CWP2SS
    IF CWP1ST EQ 1 THEN
    DELAY CWP_RESET (5)
    TURNOFF CWP2SS
    DELAY CWP_RESET (5)
    CWP.PUMP.ROTATNOW = 1
    DELAY CWP_RESET (10)
    WHEN CWP.PUMP.FAIL EQ 0
    GOTO TWO
    ENDIF
    IF CWP2ST EQ 1 THEN
    DELAY CWP_RESET (5)
    TURNOFF CWP1SS
    DELAY CWP_RESET (5)
    CWP.PUMP.ROTATNOW = 1
    DELAY CWP_RESET (10)
    WHEN CWP.PUMP.FAIL EQ 0
    GOTO TWO
    ENDIF
    DELAY CWP_RESET (2)
    REPEAT

    STEP TWO
    IF (CWP1SS EQ 1) AND (CWP.PUMP.LEADPMP EQ 2) THEN
    CWP.PUMP.ROTATNOW = 1
    ENDIF
    IF (CWP2SS EQ 1) AND (CWP.PUMP.LEADPMP EQ 1) THEN
    CWP.PUMP.ROTATNOW = 1
    ENDIF
    AUTO CWP1SS
    AUTO CWP2SS

    ENDTASK
    Thanks a lot... That really helps out. I have a question about the part in red. Where you have the name and numbers in {} I am assuming that it the exact point name in the controller along with the element and bus number correct?

    Thanks
    J. King

  8. #8
    Join Date
    Dec 2006
    Location
    Washington, DC
    Posts
    510
    With a CONNECT you do not need the bus/element as you are in the same controller. A NETWORK POINT would require the bus/element as the program need to go to another controller.

    If you paste the Syntax from BEST++, it will look like the example below for a Discrete Output.

    CONNECT discro AS A DISC_OUTPUT {,0,}

    I replace the discro with the name I want to use in the program as they need to be unique. Then in the {}, the Point Name goes before the the first ,. When you compile it adds other information, believe it pertains to the point type or something.

    The numbers in the {} after the TASK CWP_RESET is also added when you compile. I do know the second number [8] pertains to the force proirity that BEST++ applies to points that are written. The last number [60] pertains to the startup time delay, basically if the controller reboots it will delay 60 seconds before running the task.
    Quote Originally Posted by Qui-Gon Jinn (Star Wars Episode 1)
    "The ablilty to speak does not make you intelligent!"

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Comfortech Show Promo Image

Related Forums

Plumbing Talks | Contractor Magazine
Forums | Electrical Construction & Maintenance (EC&M) Magazine
Comfortech365 Virtual Event