The Allen Bradley 1747-PT1 Hand Held Terminal Tutorial

The Allen Bradley Handheld Terminal, affectionately known as 1747-PT1, is something that was more popular when Ronald Reagan was president and Duran Duran was a cool new wave band.  That’s the 1980’s for those who are not my generation.  I’m kind of a nostalgic guy so digging into how a hand held programmer works is some sort of weird interest for me.  For good reason these devices were left in the closest to gather dust once personal computers came around and you could program your PLC in DOS.  With the advent of RSLogix and cheap laptops there’s very little reason to brush the dust of your 1747-PT1.  Then again, maybe there is if all you want to do is just check a value or quickly change a preset on a timer.  You could be the coolest geek around with this puppy strapped to your belt.  Just beware your boss and work mates might think you’re goofing of playing game boy.

This article is different then a regular 1747-PT1 tutorial.  As the saying goes, “If you don’t use it you lose it”, so this is meant to be more of a cheat sheet or a quick refresher course.  I assume you all ready have a knowledge of how the SLC500 processors store files and how to address memory.  I’m more concerned with how to get around the menu structure of the 1747-PT1 once they’ve escaped my brain cells after a couple months of non-use.  If you’re looking for something more in depth then you can still download “The Getting Started Guide for HHT” and/or the “1747-PT1 User Manual” from the Rockwell Automation site.

The 1747-PT1 hand held programmer is only good on these SLC-500 processors. 

Fixed SLC500

SLC 500 Modular 5/01 and 5/02

This means the 5/03, 5/04 and 5/05 processors are NOT supported.

Extra tid bits

Keypad Overview

The function keys and keypad are pretty clunky but once you get used to the flow you can get pretty fast at it.  I imagine back in the day when these were used a lot a good programmer would have some crazy flippin’ fingers going as he input new rungs of ladder logic.

Function Keys

Keypad

Menu Structure

On the first screen the only two functions I use are PROGMAINT and UTILITY.

PROGMAINT stands for Program Maintenance which allows you to:

UTILITY allows you to:

Function List

Usually the short menu items are self explanatory but just in case here's a list of all of them described.

FUNCTIONS

Abbreviation

Meaning

ACCUM

accumulator value

ACP_RNG

accept rung

ADDR

address

ADV_SET

advanced setup

ADV_SIZ

advanced size

APP_BR

append branch

B

battery

BIN

binary number

CAN_ED

cancel edit

CAN_RNG

cancel rung

CFG_SIZ

configure size

CHG_ADR

change node address

CHG_NAM

change name

CLR_MEM

clear memory

CLR_OWNR

clear ownership

CLR_PRC

clear processor

CONT

continuous

CPT/MTH

compute/math

CRT_DT

create data

CRT_FIL

create file

CSN

continuous scan

CUR-INS

current instruction

CUR-OPD

current operand

DEC

decimal number

DEL_BR

delete branch

DEL_DT

delete data

DEL_FIL

delete file

DEL_INST

delete instruction

DEL_RNG

delete rung

DEL_SLT

delete slot

DIAGNSTC

diagnostic

DWNLOAD

download

EDT_DAT

edit data

EDT_FIL

edit file

EDT_I/O

edit I/O

ENT

enter

ENT_MAS

enter master

EXEC_FILE

executable files

EXT_DWN

extend down

EXT_UP

extend up

F

force

FILEPRT

file protection

FLT

fault

FUTACC

future access

HEX/BCD

hexadecimal/binary coded decimal number

INDXCHK

index across files

INS_BR

insert branch

INS_INST

insert instruction

INS_RNG

insert rung

INT_SBR

interrupt subroutine

I/O_MSG I/O

message

MAX_ADR

maximum node address

MEM_MAP

memory map

MEM_PRC

memory module to processor

MEM_SIZ

memory size

MOD_INST

modify instruction

MOD_RCK

modify rack

MOD_RNG

modify rung

MOD_SET

modify setup

MOD_SLT

modify slot

MOR_CPT

more compute

MOV/LOG

move/logic

NEW-INS

new instruction

NEW_PRG

new program

NEXT_FL

next file

NEXT_PG

next page

NODE_CFG

node configuration

OFL

offline

OTHERS

other instruction choices

PASSWRD

password

PRC_MEM

processor to memory module

PREV_FL

previous file

PREV_PG

previous page

PRG

program

PRG_SIZE

program size

PROGMAINT

program maintenance

RLY

relay

REM

remove

REM_ALL

remove all

REM_MAS

remove master

SAVE_CT

save and continue

SAVE_EX

save and exit

SEL_PRO

select processor

SET_OWNR

set ownership

SFT/SEQ

shift/sequencer

SNK

sink

SRC

source

SSN

single scan

TERM

terminal

TMR/CNT

timer/counter

TRANS

transistor

TRI

triac

TSTRUNG

test single rung

UND_INST

undelete instruction

UND_RNG

undelete rung

UND_SLT

undelete slot

WTCHDOG

watchdog

XFERMEM

transfer memory

 

Instruction List

INSTRUCTIONS

Mnemonics

Meaning

ADD

add

AND

and

BSL

bit shift left

BSR

bit shift right

CLR

clear

COP

copy file

CTD

count down

CTU

count up

DCD

decode 4 to 1 of 16

DDV

double divide

DIV

divide

EQU

equal

FFL FIFO

load

FFU FIFO

unload

FLL

file fill

FRD

convert from BCD

GEQ

greater than or equal to

GRT

greater than

HSC

high-speed counter

IID I/O

interrupt disable

IIE I/O

interrupt enable

IIM

immediate input with mask

INT

interrupt subroutine

IOM

immediate output with mask

JMP

jump to label

JSR

jump to subroutine

LBL

label

LEQ

less than or equal to

LES

less than

LFL LIFO

load

LFU LIFO

unload

LIM

limit test

MCR

master control reset

MEQ

masked comparison for equal

MOV

move

MSG

message

MUL

multiply

MVM

masked move

NEG

negate

NEQ

not equal

NOT

not

OR

or

OSR

one-shot rising

OTE

output energize

OTL

output latch

OTU

output unlatch

PID

proportional integral derivative

REF I/O

refresh

RES

reset

RET

return from subroutine

RPI

reset pending I/O interrupt

RTO

retentive on-delay timer

SBR

subroutine

SCL

scale data

SQC

sequencer compare

SQL

sequencer load

SQO

sequencer output

SQR

square root

STD STI

disable

STE STI

enable

STS STI

start immediately

SUB

subtract

SUS

suspend

SVC

service communications

TND

temporary end

TOD

convert to BCD

TOF

timer off-delay

TON

timer on-delay

XIC 

examine if closed

XIO

examine if open

XOR

exclusive or

 

Common Tasks

Clearing Memory

This clears the memory only in the HHT.

[F5] UTILITY
[F5] CLR_MEM
ARE YOU SURE?
[F2] YES
WORKING…

I don’t know why but if you wanted to clear the processor memory

[F5] UTILITY
[F1] ONLINE
GOING ONLINE…
[F4] MODE
[F5] PROGRAM
ARE YOU SURE?
[F2] YES
ESC
[F5] CLR_PRC
ARE YOU SURE?
[F2] YES
INITIALIZING PROCESSOR…

Upload from PLC to HHT

[F5] UTILITY
[F1] ONLINE
PROGRAM FILES DIFFER   (If you don’t get the prompt then the files are the same.)
[F2] UPLOAD
UPLOAD FROM PROCESSOR?
[F2] YES
UPLOADING FILE…

Once done it will show the file name.

Download from HTT to PLC

[F5] UTILITY
[F1] ONLINE
PROGRAM FILES DIFFER or DEFAULT FILE IN PROCESSOR
[F3] DWNLOAD or [F2] DWNLOAD
DOWNLOAD TO PROCESSOR?
[F2] YES
DOWNLOADING FILE…

Once done it will show the file name.

Change Modes

[F5] UTILITY
[F1] ONLINE
[F4] MODE
[F1] RUN or [F5] PROGRAM
ARE YOU SURE?
[F2] YES

Monitor the Ladder Logic

[F5] UTILITY
[F1] ONLINE
If not in run mode then follow “change mode” instructions above
ENTER
[F5] MONITOR
ENTER FILE NUMBER: 2
WORKING… and there it is in all it’s glory.

Press RUNG and enter the number of the rung to go straight to it.

Pressing ZOOM when on an instruction will display it’s details.

[F4] SEARCH

Search functions

[F1] CUR-INS finds current instruction that the cursor is on
[F2] CUR-OPD finds current operand that the cursor is on
[F3] NEW-INS enter an instruction to find
[F4] UP/DOWN toggle to search up or down.
[F5] FORCE find force

Monitoring/Entering the Data

Follow the “monitor the ladder logic” instructions

[F3] EDT_DAT
The prompt has the current address value to be changed.
[F1] ADDRESS enter address to go to
[F2] NEXT_FL go to next file
[F3] PREV_FL go to previous file
[F4] NEXT_PG go to next page
[F5] PREV_PG go to previous page

Editing the Ladder Logic

[F3] PROGMAINT
[F3] EDT_FIL
ENTER FILE NUMBER: 

[F1] INS_RNG this will put a rung above the cursor position.
[F2] MOD_RNG modify the current rung
[F3] SEARCH will search for instruction
[F4] DEL_RNG delete rung
[F5] UND_RNG undo rung
ENTER
[F2] EDT_DAT edit data
[F4] SAVE_CT compile program but do not exit editing
[F5] SAVE_EX compile program and exit editing

Example Editing an On Timer’s T4:0 Preset from 1000 to 1500

Place cursor on timer

[F2] MOD_RNG
[F3] MOD_INST
[F2] TMR/CNT
[F1] TON
ENTER TIMER: T4:0
ENTER
ENTER PRESET: 1000 change to 1500
ENTER
[F5] ACCEPT
WORKING…
ESC
ESC
[F5] ACP_RNG
ENTER
[F5] SAVE_EX
MODIFY OPTIONS, ACCEPT TO COMPILE
[F5] ACCEPT
STATUS: COMPILE IN PROGRESS.  NO ERRORS.
ESC

Now go download the program