Hi there.
Thank you soo very much thus far in assisting me to get this working. It is really appreciated.
Soooo... firstly i replaced the arduino and the max485 and now i am actually getting voltages etc. on the A/B outputs. I noticed that the arduino was getting warm which i thought was odd.
The company who gave asked me to do this project for them preconfigured a veroboard with circuitry and i am presuming something went wrong with the soldering which fried something. 
I have since gone through the board and made sure that all is in tact as should be.
I thought something was wrong the other day but I carried on nonetheless thinking it was something in my code etc.
So I have now got a new arduino nano connected to the max485.
I have updated @markd833 code that you kindly sent me to incorporate the nano pinout (which i think is correct).
I am still getting CRC errors when it transmits the array's in the code despite checking them correctly against the site you shared with me. 
In the spec sheets i see that for baud 9600 there is :
an inter-byte delay of <=1.2ms
inter telegram delay of >=3ms
inter telegram delay after data message >=50ms
Reply delay [3ms-50ms]
#include <Arduino.h>
// Uses PJRC AltSoftSerial library which is better than the standard SoftwareSerial library (IMHO)
// Get it here: https://www.pjrc.com/teensy/td_libs_AltSoftSerial.html
//
// All pin numbers are for an Arduino UNO.
#include <AltSoftSerial.h>
// MAX485 : RO to pin 8 & DI to pin 9 when using AltSoftSerial
#define RE 11
#define DE 12
// const byte msg1[] = {0x27, 0x0F, 0x20, 0x01,
// 0x02, 0x04, 0x02, 0x10, 0x1A, 0x1B, 0x04, 0x02, 0x04, 0x05, 0x03, 0x81, 0x06,
// 0x80, 0x2A, 0xAA };
// const byte msg1[] = {0x27, 0x0E, 0xFE, 0x01,
// 0x00, 0x02, 0x02, 0x03, 0x04, 0x02, 0x2E, 0x2F, 0x02, 0x02, 0x94, 0x95,
// 0x2A, 0xAA };
// const byte msg1[] = {0x27, 0x0E, 0xFE, 0x01,
// 0x00, 0x02, 0x02, 0x03, 0x04, 0x02, 0x2E, 0x2F, 0x02, 0x02, 0x94, 0x95,
// 0x2A};
// const byte msg1[] = {0x27, 0x0F,0x20,0x04,0x02,0x10,0x1A,0x1B,0x4,0x02,0x05,0x03,0x81,0x06,0x80,0x2A};
// const byte msg1[] = {0x27,0x0E, 0xFE,
// 0x01, 0x00, 0x02, 0x02, 0x03, 0x04, 0x02, 0x2E, 0x2F, 0x02 ,0x02, 0x94,
// 0x95, 0xA2, 0xAA};
const byte msg1[] = {0x27,0x0E, 0xFE,
0x02, 0x95,
0x8A, 0x57};
// const byte msg1[] = {0x27, 0x0F, 0x20, 0x01,
// 0x02, 0x04, 0x02, 0x10, 0x1A, 0x1B, 0x04, 0x02, 0x04, 0x05, 0x03, 0x81, 0x06,
// 0x80, 0x2A };
byte values[11];
AltSoftSerial swSerial;
void setup() {
Serial.begin(9600);
// set this to the required baud rate - max of 19200 baud
swSerial.begin(9600);
pinMode(RE, OUTPUT);
pinMode(DE, OUTPUT);
// put RS-485 into receive mode
digitalWrite(DE, LOW);
digitalWrite(RE, LOW);
delay( 1000 );
}
void loop() {
uint32_t startTime;
uint8_t rxByte;
Serial.println("Sending command");
Serial.print("Response: ");
// put the MAX485 into transmit mode
digitalWrite(RE, HIGH);
digitalWrite(DE, HIGH);
// send the message
swSerial.write( msg1, sizeof(msg1) );
// wait for all of the message to be sent
swSerial.flushOutput();
// put the MAX485 back into receive mode
digitalWrite(RE, LOW);
digitalWrite(DE, LOW);
startTime = millis();
// wait for up to 2 seconds for any reply and print out any received bytes
while ( millis() - startTime < 2000UL ) {
if ( swSerial.available() ) {
rxByte = swSerial.read();
Serial.print( rxByte, HEX );
Serial.print( " " );
}
}
Serial.println();
Serial.println();
// 5 second delay, then repeat the whole process again
// delay( 5000 );
}