# Development of TVWS system for industrial automation

Abhipray Singh

Indian Institute of Technology Patna, Patna 801103

Dr. Rabindranath Bera

Professor, Department of ECE, Sikkim Manipal Institute of Technology, Sikkim 737136

## Abstract

Cellular technology is mostly an urban technology that has been unable to serve rural areas well. This is because the traditional cellular models are not economical for areas with low user density and lesser revenues. It is about time to identify the root cause that has hindered the rural technology growth and analyse the possible options in 5G architecture to address this issue. We propose the development of TV BAND WHITE SPACE (TVWS) link dovetailed with 5G infrastructure for rural coverage and show that it can be used as a means of communication for Industrial Automation. Digitization and intelligentization of manufacturing process is the need for today’s industry. The manufacturing industries are currently changing from mass production to customized production. The rapid advancements in manufacturing technologies and applications in the industries help in increasing productivity. The term Industry 4.0 stands for the fourth industrial revolution which is deﬁned as a new level of organization and control over the entire value chain of the life cycle of products and is geared towards increasingly individualized customer requirements. Presently, the Communication and IOT Industries has been geared up for the 4th Industrial Revolution with 5G TVWS (TV White Space) for rural internet connectivity for unreachable Home. We are developing a 5G TVWS system in the frequency domain around 1 GHz. The TVWS system is used to send Test Signals over a Local Cloud Server to test a DUT (Device under Test) and then display the results that whether the instrument is faulty or not. The whole system would be designed in MATLAB. One of our objective is to achieve INDUSTRY 4 TV Solution with and usable for ALL the Industries with Quality Product facilitated by the production cost saving of 20% or more which is due to 100% utilization of the Test Instrumentation. We are also trying to achieve the same goal using other automation software’s such as keysight, benchVue, SystemVue etc over a 28GHz 5G spectrum if possible.

## Abbreviations

Abbreviations
 TVWS TV Band White Space VSG Vector Signal Generator GDP Gross Domestic Product URC Ultra Reliable Communication URLLC Ultra Reliable Low Latency Communication M2M Machine to Machine Communication ARQ Automatic Repeat Request BS Base Station EVM Error Vector Magnitude ACPR Adjacent Channel Power ratio VSWR Voltage Standing Wave Ratio DUT Device Under Test

## What is TVWS

‘White space’ is a label indicating a part of the spectrum, which is available for a radiocommunication application (service, system) at a given time in a given geographical area on a non-interfering / non-protected basis with regard to other services with a higher priority on a national basis. Telecommunication Engineering Centre Radio Division 2 The TV White Space gets its name from the fact that it falls in the spectrum range of 470–890 MHz (ITU- Region 3 Frequency Allocations) which is the band allocated mainly for Broadcasting as the primary service. There are different ways in which TVWS can arise at any given location. The amount of spectrum available in the form of TVWS can vary significantly across different locations and will depend on various factors, including: geographical features, the level of interference potential to the incumbent TV broadcasting service, TV coverage objectives and related planning, and television channels utilization. The availability of TVWS can be mainly categorized as;

i)  Frequency: idle channels of a TV band plan in some geographical areas due to interference avoidance techniques like employing guard bands,

ii)  Height: defines the availability of TVWS at a given area in terms of the height of the TVWS transmission site and its antenna height, in relation to surrounding TV broadcasting coverage reception,

iii)  Space: geographical areas that are outside the current TV coverage and therefore no broadcasting signal is currently present. Also, those geographical separation areas (planned) between locations using the same TV channels,

iv)  Time domain: a TVWS could become available when a broadcasting emission is off-air; hence the licensed broadcasting transmitter is not using the assigned frequency channel during a specific period of time and so making it available for use as TVWS on non-interference basis.

## Need for TVWS

Mentioned below are some of the key points that have led to the need for exploring alternative and more efficient ways of spectrum utilization like TVWS:

1) Growing uptake of data-intensive applications and rapid consumer absorption of novel mobile products. Figure 1 shows the rapidly growing mobile broadband usage in the world. In the presence of band-width bottlenecks, potential regulatory choices for addressing such issue would strive to achieve maximum spectrum efficiency through exploring forms of dynamic spectrum access (i.e. cognitive radio, spectrum aggregation), sound alternatives for spectrum sharing, and forward-looking spectrum planning and refarming (and avoidance of spectrum fragmentation).

2) The low consumer base characteristics of rural and remote regions, along with potentially more challenging geographical features, has contributed to the lack of connectivity in such areas. Reaching these regions by means of fixed-line infrastructure is capital-intensive. A wireless alternative is a more viable choice; especially those alternatives than can achieve large coverage areas with fewer base stations. This is where the TVWS technology comes into picture and can prove to be a better choice for pervasive communication infrastructure in far flung and rural areas.

Worldwide growth of mobile broadbandTV White Spaces, a pragmatic approach (2013)

## TVWS with 5G architecture

Based on rural coverage challenges, it is safe to articulate that the rural Internet solution has to be centred on (i) scalable topology, (ii) minimum infrastructure deployment, and (iii) use of unlicensed band. In this context, the use of TV band white space presents itself as a promising technology since it fulfils all these requirements. Over the years, the researchers have carried out miscellaneous experiments to utilize unused TV UHF band for various communication scenarios. The use of TVWS as a networking solution has been materialized in a variety of cases with different preferences, a few of which are listed in Table I. It is pertinent to highlight that to the best of our knowledge, TVWS implementation with infrastructure cost-effectiveness as its core concern has not been proposed till date. Moreover, for cellular networks, the most recent case of TVWS utilization has been demonstrated for Long Term Evolution (LTE) system [10]. In this case, an LTE base station makes use of TVWS and results have shown that downlink speeds up to 45 Mbps can be achieved successfully, albeit with specialized user equipment. The researchers have also advocated TVWS for rural connectivity by making use of optical fiber in selective villages to backhaul the aggregated data to a centralized point [17], however, this arrangement might not be an optimistic investment for a service provider on a large scale. In this context, we propose that the vista of using TVWS for rural Internet access can be utilized with the wireless backhaul of 5G architecture in a cost-effective manner. Since the 5G network makes use of C-RAN architecture due to resource pooling and centralization benefits, hence the Baseband Unit (BBU) of various BSs would be located at a centralized place. Therefore, the MBS cell sites would only house the Remote Radio Head (RRH).

PRIMARY TARGETS IN VARIOUS USE-CASES OF TVWS (Feasibility, Architecture and Cost Considerations of Using TVWS for Rural Internet Access in 5G.)

## Use case of ‘5G IOT’:Industry 4 with cyber automation

Use cases of 5G IOT (5G New Radio: &Things to know)

Above figure is mainly describe the use cases of 5G, which is discussed below:

Enhanced Mobile Broadband: The 5G standard promises to usher in the next era of immersive and cloud-connected experiences with faster, more uniform data rates at lower latency and lower cost per bit. The 5G standard will take mobile computing performance to the next level with high-speed, always-on, always-connected internet links with real-time responsiveness. The goal is to reach up to 20 Gb/s peak throughput and 1 Gb/s throughput in high mobility. The need for high-speed internet with real-time responsiveness is seen with virtual reality (VR) and augmented reality (AR) experiences.

Massive Machine-Type Communications: One of the most anticipated 5G use cases is the ability to seamlessly connect embedded sensors in virtually everything. The industry foresees huge numbers — as many as 20.4 billion — of potential IoT devices in service by 2020. Industrial IoT is one area where 5G will play a major role, enabling smart cities, asset tracking, smart utilities, agriculture, and security infrastructure (e.g. alarms or geofencing).

Ultra-Reliable Low-Latency Communications: This category includes new services that will transform industries with ultra-reliable/available low-latency links, such as remote control of critical infrastructure, and (popularly) self-driving vehicles. The level of reliability and latency will be vital to smart-grid control, industrial automation, robotics, and drone control and coordination.

## Statement of the Problems

Basically, we have the following problems that we would need to address:

♦ The TVWS whitespace in India is largely unused and hence we have to see the methods most economical and optimal to use the wide bandwidth.

♦ We will be using 1 GHz spectrum to as a TVWS link for communication and will try to send data and test signals over this link.

♦ Since this link would be used for communication and mainly industrial automation purposes it has to be ultra reliable. This would be achieved by using the 5G architecture for URLLC communication. We have two options to explore increasing the reliability for this communication. The Cognitive Radio method or the ARQ diversity method.

♦ We need to record the performance of data transmission over this link.

♦ A parallel 28 GHz link would be used to compare performance during runtime to assess impact in performance link during rain etc.

♦ We will also try to use Keysight pathwave solutions with the 28Ghz 5G network link for industrial automation to compare its performance with the TVWS link.

## Objectives of the Research

The main purpose of this project would be develop a reliable communication link in the TV-White Space for commercial use. The purpose of the link would be to provide high speed ultra reliable test signal transmission for industrial automation.

The overall objective of this research is to tap this unused spectrum for an economical and reliable solution for industry 4.0. This will also help to demonstrate the increasing importance of 5G architecture which is yet to be introduced in India.

## Scope

When fully completed and established, this link would provide a huge leap for Industry 4.0 solution realization. Industry 4.0 is definitely a revolutionary approach to manufacturing techniques. The concept will push global manufacturers to a new level of optimization and productivity. Not only that, but customers will also enjoy a new level of personally customized products that may have never been available before. The Server- based automation will reduce the cost and increase the speed of production. This will provide as the next step in the industrial revolution.

Apart from industrial automation, the TVWS also offers rural network coverage. Right now, the Rural India contribute 50% to the GDP but they have no internet access. The TVWS will provide a cost – effective solution to provide 5G network access to them and help in their development.

## Improving the Transmission Reliability in Smart Factory through Spatial Diversity with ARQ

Yanan Gao, Tao Yang, Bo Hu, investigated the feasibility of URC over wireless M2M links by proposing a transmission scheme based on spatial diversity with cooperative ARQ. As the multiple antennas are installed at the control BS that is also used for data retransmission, this scheme is especially suited for resource-constrained M2M communications. The analysis describes the challenges of providing reliable real-time communications under the ultra-low latency requirement. It shows that cooperative ARQ improves the link quality signiﬁcantly, while spatial diversity scheme further boosts the reliability. However, the improvement obtained by the proposed scheme depends on the accuracy of feedback channel. The uncertainty in a feedback channel would reduce the gain. Therefore, future work should focus more on PHY schemes, such as channel estimation, interference cancellation etc. to strengthen the system reliability.

We on the other hand implemented the Frequency Diversity approach to deal with the reliability issues in the network. This means we will be simultaneously using two links, one the TVWS link and the other would be a28 Ghz 5G link. Depending on transmission quality and reception we would switch automatically between these two links. We can also say this is a part of Cognitive radio approach.

## Feasibility, Architecture and Cost Considerations of Using TVWS for Rural Internet Access in 5G

Moshsin Khalil Et Al, weighed various options to explore the feasibility of providing Internet access to rural population using 5G network. Even though our research doesn’t focus much on the rural implementation of the TVWS network, we have adapted the 5G architecture explained in the paper. From an implementation viewpoint, main challenge of this approach would be to sustain good network performance in those areas which are although fed through a single gateway base station installed at the suburbs of a city, but also comprise of successive relay points within the network path.

## Industry 4.0-A Glimpse

Saurabh Vaidya Et Al, focused on the concept of fourth industrial revolution, called Industry 4.0 which allows smart, efficient, effective, individualized and customized production at reasonable cost. With the help of faster computers, smarter machines, smaller sensors, cheaper data storage and transmission could make machines and products smarter to communicate with each and learn from each other. The nine pillars of industry 4.0 explained with the examples to understand the application of Industry 4.0 as well as used to identify the challenges and issues with the implementation of Industry 4.0.

The main driving force behind the development of the TVWS link has been to establish and realize the Industry 4.0 solution. We will be automating the whole testing and checking process to speed up production using this server-based computation. Data collection from the production lines and optimization of that data for the use of effective machines, Energy Saving and Optimized maintenance scheduling.

## 5G Manufacturer Reduces Test Time by 20X (KEYSIGHT PAHWAVE – CASE STUDY)

Even though our research work predominantly focuses on the TVWS system development, we on the side-line have tried to realize the industry 4.0 realization throughout other softwares such as keysight pathwave solutions over a local cloud server operating on 5G 28GHz spectrum.

Figure 3 shows the overall test solution architecture. Modular PXI hardware provides the necessary test signals and acquires the time and frequency data needed for the transceiver electronics; including power supplies, filters, digital, and RF sections.

PathWave Test manages the test sequences across the various test stations. High powered network computers collect the data from the remote test stations to quickly compute the required measurement parameters; EVM, SEM, and ACPR using PathWave. Those results are available in a central database for easy access and analysis via PathWave Analytics software.

PathWave software provides significant test speed and asset utilization benefitsCase Study(2018) , 5G Manufacturer Reduces Test Time by 20X

The new test architecture is more efficient, with measurement algorithms shared across test stations and easily updated to support new signal formats and hardware. Also, test station software is managed and updated remotely by authorized users. By reconfiguring the software, test stations are modified to test any device across a variety of signal formats from 3G to 5G. Pathwave test software provides fast measurements for every format via the cloud server. The solution increases manufacturing flexibility because each test station is used to test a wider variety of products.

## Concepts

1.1 Transmission

The advent of digital communications systems has led to the development of the Vector Signal generator (VSG), also known as a digital signal generator. These signal generators are capable of generating digitally- modulated radio signals that may use any of a large number of a large number of digital modulation formats. We will be transmitting a modulated carrier wave over the TVWS band and receive it at the other end to analyse its reception.

1.2 Reception

A Set-top Box is used at the receiving end that perform since the transmitted signal comes in range of the satellite transmission. The Set-top box performs demodulation and extracts the Baseband from the signal. At the receiver side, signal received by Rx antenna is directly connected to the above below satellite receiver IC. In this receiver, carrier is removed and we are tracing the baseband data from IQ demodulator present in the system.

In this way, we transmit a simple carrier wave over the TVWS . The whole process is automated and performed using MATLAB. Detailed explanation is given in the Methods Section.

2) Sending a Test Signal Over this Link

Now that the Link is established, we would like to send a Test Signal Over this link. This is done in order to check the reliability and faithfulness of the reception of the Test signal which would be used for carrying out various tests on the devices that are to be checked and verified for defects after their manufacture.

3) Performing a test analysis on a TVWS board for representing Industrial Automation

Now we would like to see a demonstration of the application of establishing this TVWS link. We would send a test signal to check the various section of a simple TV board and the re-transmit the results back over the same link and compare them with standard outputs to check if the results are correct or faulty. The whole process would be automated and would stand as a example of the application of this link in the Industry.

Proposed TVWS board to be tested through automated test setup.

There are three major parts to check in a TV board:

A. RF Testing

B. Digital baseband Testing

C. Power section testing

The following figure shows an example of RF Testing and analyzation.

Condition for Fault Detection

✸ Black graph representing the actual test data of RF section of TVWS board which will be saved in local or cloud server.

✸ Red graph is representing the faulty data.

✸ Analyzer tool will match the tested data with this predefined graph.

✸If match with the Black curve, the board will pass out from the production line, will mark as tested OK.

If the curve will not match with black one, any discrepancy will come like RED graph, and then it will go back to the production line as a faulty set.

## Methods

In our case, we would be using a Agilent N5-182A (100KHz–3GHz) MSR as shown in Fig.1 to transmit all the required signals over the TVWS bandwidth.

MXG Vector Signal Generator

The TVWS bandwidth is of around 400–900 MHz but due to limitations of instruments we instead use a 1GHz carrier signal to establish a link in TVWS domain. This particular frequency is choosen because it is in the range of commercial satellite receiver system which is acting as a receiver part in our setup.

Horn Antenna

Horn- Antennas (As shown above) are used as the transmitting and receiving antennas for our Link.

The VSG sends a modulated carrier wave of frequency 1.422667GHz . The frequency is set so because the satellite receiver demodulates the signal with a LO frequency of 11172MHz. The satellite receiver demodulates the signal and outputs a baseband signal of frequency 1KHz .

The Satellite receiver system outputs a 1Khz sinewave. The received waveform is then passed through a VSWR meter(fig 11) to filter out any noise and outputs a 1KHz sinewave on a Oscilloscope as shown in figure 12.

VSWR meter
Oscilloscope

The Set-Top Box is also connected to a TV display to set the LO frequency of 11172MHz And the sampling speed as 2000Ks/s

To automate this whole process, we use a MATLAB program. The program first sets the necessary parameters and configures the VSG for transmission. Then, once the signal is transmitted it takes the data from the Oscilloscope and analyses it, calculating it’s frequency and amplitude. Also, it stores the power received in dbM for power loss analysis.

The MATLAB code is given below:

clear all % Open a VISA connection or a raw TCPIP/GPIB connection to the instrument(VSG)% deviceObject = visa('agilent','TCPIP0::A-N5182A-80056.dhcp.mathworks.com::inst0::INSTR');% deviceObject = gpib('agilent',8,19);deviceObject = tcpip('172.16.2.240',5025); % Set up the output buffer size to hold at least the number of bytes we are% transferring%deviceObject.OutputBufferSize = 100000;% Set output to Big Endian with TCPIP objects, because we do the interleaving % and the byte ordering in code. For VISA or GPIB objecs, use littleEndian.%deviceObject.ByteOrder = 'bigEndian'; % Adjust the timeout to ensure the entire waveform is downloaded before a% timeout occurs%deviceObject.Timeout = 10.0; % Open connection to the instrumentfopen(deviceObject);   % Some more commands to make sure we don't damage the instrumentfprintf(deviceObject,':OUTPut:STATe OFF')fprintf(deviceObject,':SOURce:RADio:ARB:STATe OFF')fprintf(deviceObject,':OUTPut:MODulation:STATe OFF') % Set the instrument source freqfprintf(deviceObject, 'SOURce:FREQuency 1422667000');% Set the source powerfprintf(deviceObject, 'POWer 10');  % Write out the ASCII LF character%fprintf(deviceObject,''); % Wait for instrument to complete download% If you see a "Warning: A timeout occurred before the Terminator was reached." % warning you will need to adjust the deviceObject.Timeout value until no% warning results on executioncommandCompleted = query(deviceObject,'*OPC?'); % Some more commands to start playing back the signal on the instrumentfprintf(deviceObject,':SOURce:RADio:ARB:STATe ON')%fprintf(deviceObject,':OUTPut:MODulation:STATe ON')fprintf(deviceObject,':OUTPut:STATe ON')%fprintf(deviceObject,[':SOURce:RADio:ARB:WAV "ARBI:' ArbFileName '"']); % Close the connection to the instrumentfclose(deviceObject); delete(deviceObject); clear deviceObject  % Now after setting vsg we acquire data from the CRO visaObj = visa('agilent','TCPIP0::172.16.3.65::inst0::INSTR');% Set the buffer sizevisaObj.InputBufferSize = 100000;% Set the timeout valuevisaObj.Timeout = 10;% Set the Byte ordervisaObj.ByteOrder = 'littleEndian';% Open the connection fopen(visaObj);% for i=1:1       %% Instrument control and data retreival% Now control the instrument using SCPI commands. refer to the instrument% programming manual for your instrument for the correct SCPI commands for% your instrument.% Reset the instrument and autoscale and stopfprintf(visaObj,':AUTOSCALE'); fprintf(visaObj,':STOP');% Specify data from Channel 1fprintf(visaObj,':WAVEFORM:SOURCE CHAN1');% Set timebase to mainfprintf(visaObj,':TIMEBASE:MODE MAIN');% Set up acquisition type and count. fprintf(visaObj,':ACQUIRE:TYPE NORMAL');fprintf(visaObj,':ACQUIRE:COUNT 1');% Specify 5000 points at a time by :WAV:DATA?fprintf(visaObj,':WAV:POINTS:MODE RAW');fprintf(visaObj,':WAV:POINTS 5000');% Now tell the instrument to digitize channel1fprintf(visaObj,':DIGITIZE CHAN1');% Wait till completeoperationComplete = str2double(query(visaObj,'*OPC?'));while ~operationComplete    operationComplete = str2double(query(visaObj,'*OPC?'));end% Get the data back as a WORD (i.e., INT16), other options are ASCII and BYTEfprintf(visaObj,':WAVEFORM:FORMAT WORD');% Set the byte order on the instrument as wellfprintf(visaObj,':WAVEFORM:BYTEORDER LSBFirst');% Get the preamble blockpreambleBlock = query(visaObj,':WAVEFORM:PREAMBLE?');% The preamble block contains all of the current WAVEFORM settings.  % It is returned in the form <preamble_block><NL> where <preamble_block> is:%    FORMAT        : int16 - 0 = BYTE, 1 = WORD, 2 = ASCII.%    TYPE          : int16 - 0 = NORMAL, 1 = PEAK DETECT, 2 = AVERAGE%    POINTS        : int32 - number of data points transferred.%    COUNT         : int32 - 1 and is always 1.%    XINCREMENT    : float64 - time difference between data points.%    XORIGIN       : float64 - always the first data point in memory.%    XREFERENCE    : int32 - specifies the data point associated with%                            x-origin.%    YINCREMENT    : float32 - voltage diff between data points.%    YORIGIN       : float32 - value is the voltage at center screen.%    YREFERENCE    : int32 - specifies the data point where y-origin%                            occurs.% Now send commmand to read datafprintf(visaObj,':WAV:DATA?');% read back the BINBLOCK with the data in specified format and store it in% the waveform structure. FREAD removes the extra terminator in the bufferwaveform.RawData = binblockread(visaObj,'uint16'); fread(visaObj,1);% Read back the error queue on the instrumentinstrumentError = query(visaObj,':SYSTEM:ERR?');while ~isequal(instrumentError,['+0,"No error"' char(10)])    disp(['Instrument Error: ' instrumentError]);    instrumentError = query(visaObj,':SYSTEM:ERR?');end% Close the VISA connection.%% Data processing: Post process the data retreived from the scope% Extract the X, Y data and plot it % Maximum value storable in a INT16maxVal = 2^16; %  split the preambleBlock into individual pieces of infopreambleBlock = regexp(preambleBlock,',','split');% store all this information into a waveform structure for later usewaveform.Format = str2double(preambleBlock{1});     % This should be 1, since we're specifying INT16 outputwaveform.Type = str2double(preambleBlock{2});waveform.Points = str2double(preambleBlock{3});waveform.Count = str2double(preambleBlock{4});      % This is always 1waveform.XIncrement = str2double(preambleBlock{5}); % in secondswaveform.XOrigin = str2double(preambleBlock{6});    % in secondswaveform.XReference = str2double(preambleBlock{7});waveform.YIncrement = str2double(preambleBlock{8}); % Vwaveform.YOrigin = str2double(preambleBlock{9});waveform.YReference = str2double(preambleBlock{10});waveform.VoltsPerDiv = (maxVal * waveform.YIncrement / 8);      % Vwaveform.Offset = ((maxVal/2 - waveform.YReference) * waveform.YIncrement + waveform.YOrigin);         % Vwaveform.SecPerDiv = waveform.Points * waveform.XIncrement/10 ; % secondswaveform.Delay = ((waveform.Points/2 - waveform.XReference) * waveform.XIncrement + waveform.XOrigin); % seconds% Generate X & Y Datawaveform.XData = (waveform.XIncrement.*(1:length(waveform.RawData))) - waveform.XIncrement;waveform.YData = (waveform.YIncrement.*(waveform.RawData - waveform.YReference)) + waveform.YOrigin; data=[waveform.XData(:),waveform.YData(:)];%figure% Plot it%p = waveform.XData/1000 ;   plot(waveform.XData,waveform.YData);set(gca,'XTick',(min(waveform.XData):waveform.SecPerDiv:max(waveform.XData)))xlabel('Time (s)');ylabel('Volts (V)');title('Oscilloscope Data');grid on;hold on;% end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% UNCOMMENT THE BELOW CODE IF YOU DIRECTLY WANT A SNAPSHOT FROM THE CRO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  % %% Now let's also get the screenshot of the instrument and display it in MATLAB% % Grab the screen from the instrument and display it% % Set the buffer size to a large value sinze the BMP could be large% visaObj.InputBufferSize = 10000000;% % reopen the connection% fopen(visaObj);% % send command and get BMP.% fprintf(visaObj,':DISPLAY:DATA? BMP, SCREEN, GRAYSCALE');% screenBMP = binblockread(visaObj,'uint8'); fread(visaObj,1);% % save as a BMP  file% fid = fopen('test1.bmp','w');% fwrite(fid,screenBMP,'uint8');% fclose(fid);% % Read the BMP and display image% figure; colormap(gray(256)); % imageMatrix = imread('test1.bmp','bmp');% image(imageMatrix); % % Adjust the figure so it shows accurately% sizeImg = size(imageMatrix);% set(gca,'Position',[0 0 1 1],'XTick' ,[],'YTick',[]); set(gcf,'Position',[50 50 sizeImg(2) sizeImg(1)]);% axis off; axis image;% % Delete objects and clear them.% delete(visaObj); clear visaObj; fclose(visaObj);

## Testsignaltransmission

This system is designed in the SystemVue Software.

Polyphase Signal Generation

P4 code like PN9 code is used here to test the link performance for its faithful reception.

P4 can be expressed as :

φi = π (i −1) (i − 1−M)/M, (1)

Where φi = ith order phase, M= no. of phase states=10, So Polyphase code length is 10.

This code is designed into SystemVue, which is capable to generate the equivalent bit stream of P4 design and then download it into VSG using a downloader application available in SystemVue for the specific hardware model. The hardware generated from P4 code is coming out from RF interface integrated with the VSG and transmitted over the 1GHz link using horn antenna. After IQ demodulation at the receiver, we are visualizing it using a Oscilloscope.

The results obtained are showed in Results Section 4.2.

Alternative Approach: Using the 28GHz System

Upto now we have solely focused on the development of the TVWS link and it’s applications But upto now we haven’t answered the question as to why we are using this link and what are it’s benefits in comparison to some other links available. In our ECE SMIT lab, we already have an established 28GHz 5G setup which can be used for comparison with the TVWS link and we can see if it’s feasible to use it.

## Test analysis on TVWS baseband board (Using 28 GHz)

For this purpose, the 28Ghz 5G network is used. In this part we will only be testing the RF section of the TVWS Board. The VSG will supply a suitable frequency which will then sweep over the bandwidth of the RF section. The Sweeping frequency would help us to get the gain v/s frequency behaviour of the RF section.

The Antenna setup is the same as before as shown below:

5G Antenna

The probes are connected to the RF section of the TV Board and show the output on a Oscilloscope.

TV Board RF section connected to oscilloscope

Again, the VSG here performs the function of generating a suitable signal and acts as a Input signal to the RF section. The response of the signal is displayed in the Oscilloscope as shown in Fig.18

MXG Vector Signal generator providing the sweeping frequency
TV Board RF Output

As we can see, it is the classical response of an RF section’s gain v/s frequency behaviour and hence the RF section is working correctly. Now this data has to be transmitted from say a factory to the cloud server for checking if it’s authentic or not. For that we again turn to Matlab.

We set a Server Client protocol for this. We set the system such as the Server resides in the factory and we send data of the Oscilloscope from the server side to the Client computer over a local cloud. On the Client side the data is received and Waveform plotted and checked for it’s amplitude and other properties. If everything is OK the product is passed ad we can check for another TV board

In this way we have created a test signal, applied it to our DUT(TV Board) and sent the signal over the local cloud for verification.

The Matlab code for the above operation is given below:

Server Side:

%INITIALISING THE NETWORK AT SERVER SIDE FOR SENDING THE ACQUIRED DATA%tcpipServer = tcpip('192.168.205.2',55003,'NetworkRole','Server')tcpipServer = tcpip('172.16.3.106',55003,'NetworkRole','Server')set(tcpipServer,'InputBufferSize',3528);set(tcpipServer,'OutputBufferSize',100000);  %8set(tcpipServer,'Timeout',30);fopen(tcpipServer);%tv = 1;%fileID1 = f   open('C:\wamp\www\result1.txt','w');%if fileID1==-1 %   error('can not open file for writing');%end%fileID2 = fopen('C:\wamp\www\result2.txt','w');%if fileID2==-1%    error('can not open file for writing');   %end x=0:450; while 1%STARTING DATA ACQUISITION FROM CROvisaObj = visa('agilent','TCPIP0::172.16.3.104::inst0::INSTR');% Set the buffer sizevisaObj.InputBufferSize = 100000;% Set the timeout valuevisaObj.Timeout = 10;% Set the Byte ordervisaObj.ByteOrder = 'littleEndian';% Open the connection fopen(visaObj);% for i=1:1       %% Instrument control and data retreival% Now control the instrument using SCPI commands. refer to the instrument% programming manual for your instrument for the correct SCPI commands for% your instrument.% Reset the instrument and autoscale and stop%fprintf(visaObj,'*RST; :AUTOSCALE'); fprintf(visaObj,':STOP');% Specify data from Channel 1fprintf(visaObj,':WAVEFORM:SOURCE CHAN1');% Set timebase to mainfprintf(visaObj,':TIMEBASE:MODE MAIN');% Set up acquisition type and count. fprintf(visaObj,':ACQUIRE:TYPE NORMAL');fprintf(visaObj,':ACQUIRE:COUNT 1');% Specify 5000 points at a time by :WAV:DATA?fprintf(visaObj,':WAV:POINTS:MODE RAW');fprintf(visaObj,':WAV:POINTS 5000');% Now tell the instrument to digitize channel1fprintf(visaObj,':DIGITIZE CHAN1');% Wait till completeoperationComplete = str2double(query(visaObj,'*OPC?'));while ~operationComplete    operationComplete = str2double(query(visaObj,'*OPC?'));end% Get the data back as a WORD (i.e., INT16), other options are ASCII and BYTEfprintf(visaObj,':WAVEFORM:FORMAT WORD');% Set the byte order on the instrument as wellfprintf(visaObj,':WAVEFORM:BYTEORDER LSBFirst');% Get the preamble blockpreambleBlock = query(visaObj,':WAVEFORM:PREAMBLE?');% The preamble block contains all of the current WAVEFORM settings.  % It is returned in the form <preamble_block><NL> where <preamble_block> is:%    FORMAT        : int16 - 0 = BYTE, 1 = WORD, 2 = ASCII.%    TYPE          : int16 - 0 = NORMAL, 1 = PEAK DETECT, 2 = AVERAGE%    POINTS        : int32 - number of data points transferred.%    COUNT         : int32 - 1 and is always 1.%    XINCREMENT    : float64 - time difference between data points.%    XORIGIN       : float64 - always the first data point in memory.%    XREFERENCE    : int32 - specifies the data point associated with%                            x-origin.%    YINCREMENT    : float32 - voltage diff between data points.%    YORIGIN       : float32 - value is the voltage at center screen.%    YREFERENCE    : int32 - specifies the data point where y-origin%                            occurs.% Now send commmand to read datafprintf(visaObj,':WAV:DATA?');% read back the BINBLOCK with the data in specified format and store it in% the waveform structure. FREAD removes the extra terminator in the bufferwaveform.RawData = binblockread(visaObj,'uint16'); fread(visaObj,1);% Read back the error queue on the instrumentinstrumentError = query(visaObj,':SYSTEM:ERR?');while ~isequal(instrumentError,['+0,"No error"' char(10)])    disp(['Instrument Error: ' instrumentError]);    instrumentError = query(visaObj,':SYSTEM:ERR?');end% Close the VISA connection.%% Data processing: Post process the data retreived from the scope% Extract the X, Y data and plot it % Maximum value storable in a INT16maxVal = 2^16; %  split the preambleBlock into individual pieces of infopreambleBlock = regexp(preambleBlock,',','split');% store all this information into a waveform structure for later usewaveform.Format = str2double(preambleBlock{1});     % This should be 1, since we're specifying INT16 outputwaveform.Type = str2double(preambleBlock{2});waveform.Points = str2double(preambleBlock{3});waveform.Count = str2double(preambleBlock{4});      % This is always 1waveform.XIncrement = str2double(preambleBlock{5}); % in secondswaveform.XOrigin = str2double(preambleBlock{6});    % in secondswaveform.XReference = str2double(preambleBlock{7});waveform.YIncrement = str2double(preambleBlock{8}); % Vwaveform.YOrigin = str2double(preambleBlock{9});waveform.YReference = str2double(preambleBlock{10});waveform.VoltsPerDiv = (maxVal * waveform.YIncrement / 8);      % Vwaveform.Offset = ((maxVal/2 - waveform.YReference) * waveform.YIncrement + waveform.YOrigin);         % Vwaveform.SecPerDiv = waveform.Points * waveform.XIncrement/10 ; % secondswaveform.Delay = ((waveform.Points/2 - waveform.XReference) * waveform.XIncrement + waveform.XOrigin); % seconds% Generate X & Y Datawaveform.XData = (waveform.XIncrement.*(1:length(waveform.RawData))) - waveform.XIncrement;waveform.YData = (waveform.YIncrement.*(waveform.RawData - waveform.YReference)) + waveform.YOrigin; data=[waveform.XData(:),waveform.YData(:)];%figure% Plot it%subplot(2,1,1);plot(waveform.XData,waveform.YData);set(gca,'XTick',(min(waveform.XData):waveform.SecPerDiv:max(waveform.XData)))xlabel('Time (s)');ylabel('Volts (V)');title('Oscilloscope Data');grid on;hold on;% end   fclose(visaObj);      %% CONVERTING DATA IN A SINGLE DOUBLE ARRAY FOR TRANSMISSION  D  = [ waveform.YData  waveform.XData'] ; plot(D); ('D');%disp(waveform.YData);fwrite(tcpipServer , D(:) , 'double');end

Client Side:

%INITTIALISING THE CLIENT FOR RECEPTION OF WAVEFORM tcpipClient = tcpip('172.16.3.109',55003,'NetworkRole','Client');set(tcpipClient,'OutputBufferSize',3528);set(tcpipClient,'InputBufferSize',100000);  %8fopen(tcpipClient); while 1xdata = fread(tcpipClient,441,'double');plot(xdata);endfclose(tcpipClient); %%%%%%%%%%%%%%%%NOW THAT WE haVE ACQUIRED AND RECEIVED A DAT WE CAN APPLY THE TEST%SEQUENCIES AND DO A VARIETY OF TESTS ON THE WAVEFORM AND CHECK IF ITS%FAULTY OR NOT%%%%%%%%%%%%%%%%%%

The recorded waveform is shown in Results Section 4.3

## Reliability comparison of 28GHz and 1GHz TVWS on RAIN ATTENUATION

Comparison between the two systems

Now we compare the power loss of the 28Ghz transmission system v/s the 1 Ghz TVWS system. During rain, a Matlab Program constantly stores data of 1Ghz at a preset interval and plots it against the data of 28GHz system which is stored simultaneously.

The 28GHz system has its own independent system which records data 24/7 and can be obtained as an XML file. As for the 1Ghz system, we can enter the duration and the frequency of obtaining data. The data is stored on a MAT file and then we can compare these two pieces of information by plotting them side by side.

The data stored her is the power received in dbM so that we can compare that during rain conditions which link has less power loss and hence more reliable.

The Matlab Code for storing the data from CRO is given below:

% This example demonstrates generation of a custom waveform and download to% an Agilent RF Signal Generator%% Copyright 2009 The MathWorks, Inc. % Clear the workspaceclear all % Open a VISA connection or a raw TCPIP/GPIB connection to the instrument% deviceObject = visa('agilent','TCPIP0::A-N5182A-80056.dhcp.mathworks.com::inst0::INSTR');% deviceObject = gpib('agilent',8,19);deviceObject = tcpip('172.16.2.240',5025); % Set up the output buffer size to hold at least the number of bytes we are% transferring%deviceObject.OutputBufferSize = 100000;% Set output to Big Endian with TCPIP objects, because we do the interleaving % and the byte ordering in code. For VISA or GPIB objecs, use littleEndian.%deviceObject.ByteOrder = 'bigEndian'; % Adjust the timeout to ensure the entire waveform is downloaded before a% timeout occurs%deviceObject.Timeout = 10.0; % Open connection to the instrumentfopen(deviceObject);   % Some more commands to make sure we don't damage the instrumentfprintf(deviceObject,':OUTPut:STATe OFF')fprintf(deviceObject,':SOURce:RADio:ARB:STATe OFF')fprintf(deviceObject,':OUTPut:MODulation:STATe OFF') % Set the instrument source freqfprintf(deviceObject, 'SOURce:FREQuency 1422667000');% Set the source powerfprintf(deviceObject, 'POWer 10');  % Write out the ASCII LF character%fprintf(deviceObject,''); % Wait for instrument to complete download% If you see a "Warning: A timeout occurred before the Terminator was reached." % warning you will need to adjust the deviceObject.Timeout value until no% warning results on executioncommandCompleted = query(deviceObject,'*OPC?'); % Some more commands to start playing back the signal on the instrumentfprintf(deviceObject,':SOURce:RADio:ARB:STATe ON')%fprintf(deviceObject,':OUTPut:MODulation:STATe ON')fprintf(deviceObject,':OUTPut:STATe ON')%fprintf(deviceObject,[':SOURce:RADio:ARB:WAV "ARBI:' ArbFileName '"']); % Close the connection to the instrumentfclose(deviceObject); delete(deviceObject); clear deviceObject %% Example to connect to and download waveform data from an oscilloscope% This example connects to an Agilent scope using VISA and sends SCPI% commands to initiate acquisition and downloads the data and displays it % in MATLAB% % Note that this demo requires you to have Agilent IO Libraries installed.% The VISA resource string to the oscilloscope is to be obtained from% Agilent connection expert.% % Copyright 2010 The MathWorks, Inc%% Interface configuration and instrument connection% The second argument to the VISA function is the resource string for your% instrument Check_Point = 0;Loop_Count = 60;Time_Count = 60; %Secondsformat shortgc = clock; i = 1;%C = ones(10,1);B = ones(Loop_Count,3);example = matfile('example.mat','Writable',true);save example.mat B -v7.3; visaObj = visa('agilent','TCPIP0::172.16.3.65::inst0::INSTR');% Set the buffer sizevisaObj.InputBufferSize = 100000;% Set the timeout valuevisaObj.Timeout = 10;% Set the Byte ordervisaObj.ByteOrder = 'littleEndian';% Open the connection fopen(visaObj);while i<(Loop_Count+1)       format shortgc = clock;    %% Instrument control and data retreival% Now control the instrument using SCPI commands. refer to the instrument% programming manual for your instrument for the correct SCPI commands for% your instrument.% Reset the instrument and autoscale and stop%fprintf(visaObj,'*RST; :AUTOSCALE'); fprintf(visaObj,':AUTOSCALE'); fprintf(visaObj,':STOP');% Specify data from Channel 1fprintf(visaObj,':WAVEFORM:SOURCE CHAN1');% Set timebase to mainfprintf(visaObj,':TIMEBASE:MODE MAIN');% Set up acquisition type and count. fprintf(visaObj,':ACQUIRE:TYPE NORMAL');fprintf(visaObj,':ACQUIRE:COUNT 1');% Specify 5000 points at a time by :WAV:DATA?fprintf(visaObj,':WAV:POINTS:MODE RAW');fprintf(visaObj,':WAV:POINTS 5000');% Now tell the instrument to digitize channel1fprintf(visaObj,':DIGITIZE CHAN1');% Wait till completeoperationComplete = str2double(query(visaObj,'*OPC?'));while ~operationComplete    operationComplete = str2double(query(visaObj,'*OPC?'));end% Get the data back as a WORD (i.e., INT16), other options are ASCII and BYTEfprintf(visaObj,':WAVEFORM:FORMAT WORD');% Set the byte order on the instrument as wellfprintf(visaObj,':WAVEFORM:BYTEORDER LSBFirst');% Get the preamble blockpreambleBlock = query(visaObj,':WAVEFORM:PREAMBLE?');% The preamble block contains all of the current WAVEFORM settings.  % It is returned in the form <preamble_block><NL> where <preamble_block> is:%    FORMAT        : int16 - 0 = BYTE, 1 = WORD, 2 = ASCII.%    TYPE          : int16 - 0 = NORMAL, 1 = PEAK DETECT, 2 = AVERAGE%    POINTS        : int32 - number of data points transferred.%    COUNT         : int32 - 1 and is always 1.%    XINCREMENT    : float64 - time difference between data points.%    XORIGIN       : float64 - always the first data point in memory.%    XREFERENCE    : int32 - specifies the data point associated with%                            x-origin.%    YINCREMENT    : float32 - voltage diff between data points.%    YORIGIN       : float32 - value is the voltage at center screen.%    YREFERENCE    : int32 - specifies the data point where y-origin%                            occurs.% Now send commmand to read datafprintf(visaObj,':WAV:DATA?');% read back the BINBLOCK with the data in specified format and store it in% the waveform structure. FREAD removes the extra terminator in the bufferwaveform.RawData = binblockread(visaObj,'uint16'); fread(visaObj,1);% Read back the error queue on the instrumentinstrumentError = query(visaObj,':SYSTEM:ERR?');while ~isequal(instrumentError,['+0,"No error"' char(10)])    disp(['Instrument Error: ' instrumentError]);    instrumentError = query(visaObj,':SYSTEM:ERR?');end% Close the VISA connection.%% Data processing: Post process the data retreived from the scope% Extract the X, Y data and plot it % Maximum value storable in a INT16maxVal = 2^16; %  split the preambleBlock into individual pieces of infopreambleBlock = regexp(preambleBlock,',','split');% store all this information into a waveform structure for later usewaveform.Format = str2double(preambleBlock{1});     % This should be 1, since we're specifying INT16 outputwaveform.Type = str2double(preambleBlock{2});waveform.Points = str2double(preambleBlock{3});waveform.Count = str2double(preambleBlock{4});      % This is always 1waveform.XIncrement = str2double(preambleBlock{5}); % in secondswaveform.XOrigin = str2double(preambleBlock{6});    % in secondswaveform.XReference = str2double(preambleBlock{7});waveform.YIncrement = str2double(preambleBlock{8}); % Vwaveform.YOrigin = str2double(preambleBlock{9});waveform.YReference = str2double(preambleBlock{10});waveform.VoltsPerDiv = (maxVal * waveform.YIncrement / 8);      % Vwaveform.Offset = ((maxVal/2 - waveform.YReference) * waveform.YIncrement + waveform.YOrigin);         % Vwaveform.SecPerDiv = waveform.Points * waveform.XIncrement/10 ; % secondswaveform.Delay = ((waveform.Points/2 - waveform.XReference) * waveform.XIncrement + waveform.XOrigin); % seconds% Generate X & Y Datawaveform.XData = (waveform.XIncrement.*(1:length(waveform.RawData))) - waveform.XIncrement;waveform.YData = (waveform.YIncrement.*(waveform.RawData - waveform.YReference)) + waveform.YOrigin; data=[waveform.XData(:),waveform.YData(:)];%figure% Plot itD  = [waveform.YData waveform.XData'] ;len = length(waveform.YData);fs = 44100;n = 0:len-1;N=n*fs/(len-1); y = fft(waveform.YData);  %subplot(4,1,1);%plot(N,abs(y));%grid on; disp(max(abs(y)));%dBm = 10*log10((max(abs(y))));%disp(dBm)%plot(D); %subplot(4,1,2);%plot(waveform.XData,waveform.YData);%drawnow;%set(gca,'XTick',(min(waveform.XData):waveform.SecPerDiv:max(waveform.XData)))%xlabel('Time (s)');%ylabel('Volts (V)');%title('Oscilloscope Data');%grid on;%hold on; [Pxx,f] = pwelch(waveform.YData,[],[],[],44100);newdata = [f,Pxx]; %subplot(4,1,3);%plot(f,Pxx);%grid on; [~,loc] = max(Pxx);FREQ_ESTIMATE = f(loc);%FREQ_ESTIMATE = FREQ_ESTIMATE/43.0064;  fprintf('Frequency = %g kHz \n',FREQ_ESTIMATE);fprintf('Amplitude = %g V \n',(max(waveform.YData)-min(waveform.YData)));RMS = (max(waveform.YData)-min(waveform.YData))*0.3535;pow = (RMS*RMS)/50;dBm = 10*log10(1000*pow);disp(dBm);%save('pqfile1.mat','dBm');example.B(i,1) =dBm ;example.B(i,2) = FREQ_ESTIMATE;example.B(i,3) = c(4)+(c(5)/100)+ (c(6)/10000);   if example.B(i,1) < 0.3    Check_Point = 1;end    i= i+1; disp(Check_Point);pause(Time_Count);   %disp(max(Pxx)*10000); %csvwrite('newsrf.csv',FREQ_ESTIMATE,0,0);%csvwrite('newsrf.csv',(max(waveform.YData)-min(waveform.YData)),1,1);   end %subplot(4,1,4);plot(example.B(:,3),example.B(:,1));copyfile example.mat SRFP_2019cd SRFP_2019File_Name = input('File_Name' , 's');movefile('example.mat',File_Name); % %% Now let's also get the screenshot of the instrument and display it in MATLAB% % Grab the screen from the instrument and display it% % Set the buffer size to a large value sinze the BMP could be large% visaObj.InputBufferSize = 10000000;% % reopen the connection% fopen(visaObj);% % send command and get BMP.% fprintf(visaObj,':DISPLAY:DATA? BMP, SCREEN, GRAYSCALE');% screenBMP = binblockread(visaObj,'uint8'); fread(visaObj,1);% % save as a BMP  file% fid = fopen('test1.bmp','w');% fwrite(fid,screenBMP,'uint8');% fclose(fid);% % Read the BMP and display image% figure; colormap(gray(256)); % imageMatrix = imread('test1.bmp','bmp');% image(imageMatrix); % % Adjust the figure so it shows accurately% sizeImg = size(imageMatrix);% set(gca,'Position',[0 0 1 1],'XTick' ,[],'YTick',[]); set(gcf,'Position',[50 50 sizeImg(2) sizeImg(1)]);% axis off; axis image;% % Delete objects and clear them.% delete(visaObj); clear visaObj; fclose(visaObj);

The plot is shown in results section 4.4.

## Results obtained for the TVWS link Setup

The above fig. demonstrates the waveform that we obtained after running the MATLAB program. We have sent this waveform in the TVWS band in clear channel conditions. As we can clearly see, we have got a near-perfect sinewave of frequency 1KHz.

Hence, we can purposefully say that we have established a rudimentary TVWS link through which we can reliably transmit and receive simple data and it can be used for further purposes. This can be made better and used for more and more purposes.

## Results for the Test Signal Transmission over 1GHz link

NB-IoT waveform is generated using SystemVue and realized in VSG, transmitted and received through the 1 GHz Link. The corresponding spectrum out of the hardware LINK set up are recorded.

As we can see the spectrums are almost similar with little variations due to transmission losses. The results for the actual received waveform is shown below:

Polyphase Code Transmission and Reception

As we can see, the received waveform have some losses, however behaviour of the waveform has been almost preserved. Hence, we can say that on further development we can improve the performance of the reception of the test signal and then it can be used for transmitting test signals and eventually developing into a reliable link for industrial communication

## Results for TVWS Board Testing

The following result was obtained and plotted on the client side:

Matlab output from TVWS Board RF section

As it can be clearly seen, we have obtained the correct waveform that has to be expected from the DUT. Now that we have the waveform, all forms of analysis can be done on this and we can obtain the amplitude, frequency etc. Hence, the 28GHz link is also a reliable way to send and receive test signals and data for its application in the industry sector.

## Results on Rain Comparison

The behaviour and the rain attenuation for both the links are estimated and plotted in figure 8. It is interesting to note that rain attenuation is severe in case of 28 GHz as compared to 1 GHz link. This is exploited in the design of the combined diversity reception scheme which we talked during our discussion of the literature review where the rain intensity is getting sensed at 1 GHz and switched to 28 GHz link for excellent performance during non-rain period whereas, during rain , the data reception and control using 1 GHz link.

Attenuation of received signal amplitudes during rain

From the graph it is clear that the 1GHz link is more reliable during rainy conditions than the 28GHz spectrum. Hence, we can use the 1Ghz as a pilot signal and use it to set a switching threshold in case we want to transmit data from the TVWS system instead of the 5G 28GHz system.

Major steps are taken to reduce the out of band interference and noises from this pilot tone after passing through a 1 KHz narrowband Matched Filter hardware. The rain intensity is getting sensed very accurately with precision by this pilot signal and its amplitude is reduced with rain intensity. Further a threshold detector is implemented on this received pilot when the intensity of the pilot reduced due to rain and automatic switching is implemented to accept data from 1 GHz link instead of 28GHz during severe rain.

Block Diagram of Combined Link at 28/1 GHz

In the above fig. two links are simultaneously in operation as in figure above both have its own Ethernet Switch whose power will be cut off/on after threshold rain sensing by pilot. Another COMMON Ethernet switch is also used at the output of two individual ethernet switches which will pass either 28GHz or 1 GHz data. The decoders are used after this switch.

## Conclusion

• We have seen the development and deployment of the TVWS system and the measure of its reliability. As we have shown it is more reliable than some other alternative systems like the 28GHz 5G system. Also, we have established a switching scheme with increase in reliability by frequency diversion from 28 GHz to 1 GHz during rain. The combined system is highly usable in E-crane operation for a smart factory like TISCO. The percentage outage and reliability improvement will be measured in future. Additionally, the Latency will be improved in the same link by adapting mini slots in 5G NR operation which will be tried in future.
• The TVWS link is especially a more better option for industries due to its low traffic and high reliability even during extreme weather conditions.

## Future Scope

As we have seen, we were not able to replicate a perfect signal while sending a test signal over the TVWS link. This is a shortcoming that needs rapid improvement. One of the main reasons was the use of different instruments that led to a difference in the respective Sample Rates and it would create even more problem while transferring a junk of data

Also, in our project we have just sent a Test Signal. Once the link is fully developed, we will be able to send more commands and complex signals like video audio over this link. Hence, boosting the development of our Industrial Solution.

Paper Publication

We have also submitted a paper titled 5G URLLC Communication System with Cognitive Radio and Frequency Diversity Reception for improving Reliability in Smart Factory E-cranes operation for the IMARC confrence 2019 and to be published at the confrence, organised by IIT Bombay and IEEE.
Authors: Jayanta Kumar Ray, Abhipray Singh, Quazi Md. Alfred, Subhankar Shome and Rabindranath Bera.

## REFERENCES

1.)  Mohsin Khalil, Junaid Qadir, Oluwakayode Onireti, Muhammad Ali Imran, Shahzad Younis,Feasibility, Architecture and Cost Considerations of Using TVWS for Rural Internet Access in 5G, IEEE ICIN (5GUA), 2017 .

2.)  R.R. Gulati, Monochrome and Colour Television (Second Edition), NEW AGE INTERNATIONAL (P) LIMITED, PUBLISHERS, 2005.

3.)  Yanan Gao, Tao Yang, Bo Hu , Improving the Transmission Reliability in Smart Factory through Spatial Diversity with ARQ , IEEE/CIC International Conference on Communications in China (ICCC), 2016

4.)  Saurabh Vaidya, Prashant Ambad, Santosh Bhosle, Industry 4.0 – A Glimpse, Science Direct 2nd International Conference on Materials Manufacturing and Design Engineering, 2018.​

5.)   Chen, J. Wan, L. Shu, P. Li, M. Mukherjee and B. Yin, Smart Factory of Industry 4.0: Key Technologies, Application Case, and Challenges,  IEEE Access, 2018.

6.)  Kesavan Ulaganathen1, Tharek Adbul Rahman & Md. Rafiqul Islam, Rain Fade Mitigation Using Frequency Diversity Technique, Advanced Journal of Technical and Vocational Education 93-96, 2017

7.) https://connectlp.keysight.com/APM_eng_DTS-Other_Pathwave-Analytics

## ACKNOWLEDGEMENTS

At the outset, I would like to thank Dr. Rabindranath Bera for the continuous guidance and patience. I had lot of things to learn and the amount of knowledge and experience I have gained from him is matchless. He was encouraging throughout the project. I owe my sincere thanks to him.

I thank Mr. Shubhankar Shome for his guidance in lab and overall for making it a great learning experience. I would thank him for helping me at every step. I would like to also thank Mr. Preman Chettri for his support and discussions.

I also thank Indian Academy of Sciences for their support throughout the programme and for giving me the great opportunity. The learning experience would have not been possible without this programme.

I would also like to thank Sikkim Manipal Institute of Technology for providing accommodation and other requirements hence making my stay comfortable.

#### Source

• Fig 1: Marco Zennaro & Ermanno Pietrosemoli (2013). TV White Spaces, a pragmatic approach . ICTP
• Fig 2: Mohsin Khalil, Junaid Qadir, Oluwakayode Onireti, Muhammad Ali Imran, Shahzad Younis(2017).Feasibility, Architecture and Cost Considerations of Using TVWS for Rural Internet Access in 5G. IEEE ICIN 2017.
• Fig 3: Mombasawala Mohmedsaaed(2018),5G New Radio: &Things to know
• Fig 4: Case Study(2018) , 5G Manufacturer Reduces Test Time by 20X , Keysight Technologies
More
Written, reviewed, revised, proofed and published with