background image

 

   

  andn  

m40.3  

(and the interlock bit negated) 

  jmpcn  

label8  

(jump if false) 

  mov  

bc1 bm3  

(select telephone number 0) 

  mov  

bc1 bm19  

(select message number 0) 

  mov  

bc3 bm2  

(send SMS) 

  mov  

c1 m40.3  

(set interlock bit) 

  jmp  

label9  

(jump) 

  label8:  

 

(jump label) 

  ld  

m40.1  

(load marker bit) 

  jmpc  

label9  

(jump if true) 

  mov  

c0 m40.3  

(reset interlock bit) 

  label9:  

 

(jump label) 

The above will fulfil our requirement, except for one problem. 

Lets look at the situation when both alarms are generated almost together, both digital inputs 
are activated and one second later the analogue input goes higher than 50%. The above 
instructions will first send the digital alarm to the GSM modem and then almost immediately 
send the analogue alarm. When the GSM modem receives the command to send the analogue 
alarm it will not have yet send the digital alarm it received one second earlier. It just has not 
had the time! What will happen is that the analogue alarm will overwrite the digital alarm and 
the digital alarm will not be sent. 

This is clearly not acceptable. Therefore within our B-CON task we must ensure that when one 
message is sent, further messages are not sent to the GSM modem, until the modem 
acknowledges the success or not of sending the first. 

When the modem has finished sending an SMS message it will return one of two states into 
marker bits m20.4 and m40.7 which can be explained thus: 

m20.4 set true - The SMS message has been successfully sent. This means that the GSM 
bearer service has accepted the message for onward transmission. It does guarantee that the 
message has been received by the mobile phone concerned, the phone may be turned off! 
m20.4 once set true will remain so until the next SMS message is sent, when it will be cleared 
down. 

m20.7 set true – The sending of the SMS message has failed, the message has not been sent. 
This could be because the GSM cell is busy, down etc. Altogether 4 attempts will be made to 
send the SMS message, with a 60 second delay between each attempt, after which m20.7 will 
be set true. This bit could obviously be used to re-send the SMS message. 

Let us then use these bits to ensure that messages are sent one after the other, without 
loosing any messages. 

We can do this by setting a second, common, interlock bit which when set will make a jump 
over the send instructions until being reset when the SMS message has been sent or failed. 

   

Brodersen Controls A/S 

 Industrivej 3 

 DK-4000 Roskilde 

 Tel: +45 46 74 00 00 

 Fax: +45 46 75 73 36 

E-mail: [email protected] 

 Internet: www.brodersencontrols.com 

Summary of Contents for RTU8

Page 1: ...tting Started Guide to SMS Funtionality V 1 00 Feb 2006 Doc 40030 Brodersen Controls A S Industrivej 3 DK 4000 Roskilde Tel 45 46 74 00 00 Fax 45 46 75 73 36 E mail bc brodersencontrols com Internet w...

Page 2: ...lly give the correct commands to the modem manipulation of AT commands being unnecessary Up to 10 different text messages can be sent to up to 50 different telephone numbers Please note that when the...

Page 3: ...ephone Number Scroll down the config tab and double click on the SMS Tel no field A box will appear into which you can enter the telephone number See Fig 1 3 This is the number of the SMS message cent...

Page 4: ...command mov bc0 bm19 move a byte constant of 0 to byte marker 19 and for the second number in the list mov bc1 bm19 When to send the message needs to be decided by the logic within the B CON task and...

Page 5: ...ad input 0 and i0 1 and input 1 jmpcn label1 jump if false mov c1 m40 0 set a marker bit chosen at random label1 jump label ld i0 0 load input 0 and i0 1 and input 1 jmpc label2 jump if true mov c0 m4...

Page 6: ...is is clearly not what we want We only require one message to be sent when both digital inputs go active in other words to detect the leading edge This can be achieved by using an interlock bit set at...

Page 7: ...dem acknowledges the success or not of sending the first When the modem has finished sending an SMS message it will return one of two states into marker bits m20 4 and m40 7 which can be explained thu...

Page 8: ...abel7 jump label ld m40 1 load marker bit andn m40 3 and the interlock bit negated jmpcn label8 jump if false mov bc1 bm3 select telephone number 0 mov bc1 bm19 select message number 0 mov bc3 bm2 sen...

Page 9: ...add wc1 increment by 1 each scan 100 msec st wm50 store counter ld wm50 load counter lt wm100 less then 100 100 x scan 100msecs jmpc label17 jump if yes mov c1 m152 0 set interlock when counter 100 la...

Page 10: ...wm50 load counter lt wm100 less then 100 100 x scan 100msecs jmpc label17 jump if yes mov c1 m152 0 set interlock when counter 100 label4a ld m40 4 load second interlock bit jmpc label10 jump if true...

Page 11: ...c0 m40 3 reset interlock bit label9 jump label label10 ld m20 4 load Message Sent bit or m20 7 or Message Failed bit jmpcn label11 jump if false mov c0 m40 4 reset second interlock bit label11 jump la...

Reviews: