IoT Project guides

Hi,
I’m a BSc. student in Software Engineering.I’ve given a prototype project to control a servo,a light, and a fan (DC motor) remotely using Android based Smart phone app. An Ethernet shield is inserted on the Arduino Uno rev3,and the Ethernet shield is connected to my home router.The Smartphone sends a command to the Arduino micro controller from anywhere in the world, and the micro controller sends that command to the actual device wirelessly to control it.Please find the attached file which contains an overview of conceptual architecture. kindly if you mind guide me in programming and show me what are all the required components for this project? especially I’m very confused to know which of the IoT WiFi module device transceiver can be used for the Servo,Fan, and the light, because the connection between the micro controller and those devices is wireless, it means there shouldn’t be any relay and wires between them.

Many thanks in advance and I appreciate your help.

From your description I'd assume that you'll need one Arduino for each remote device, that performs the wireless communication with the master controller.

DrDiettrich:
From your description I'd assume that you'll need one Arduino for each remote device, that performs the wireless communication with the master controller.

Isn't there any way to avoid using one Arduino for each of them? None of the IoT WiFi modules (e.g: ESP8266,ZigBee,nRF24L01,...etc) cannot do this?

Zanov:
Isn’t there any way to avoid using one Arduino for each of them?

I think you can with XBee and ZigBee, using Arduino just as a master and connect to the outside world. It might be cheaper to use a bare bones Arduino with NR24. You might also need to have Arduino if the data gets complicated, but that would not appear to be the situation here.

I think the main problems are in

  1. Setting up the router for external control
  2. Getting the right app for Android.

Nick_Pyner:
I think you can with XBee and ZigBee, using Arduino just as a master and connect to the outside world. It might be cheaper to use a bare bones Arduino with NR24. You might also need to have Arduino if the data gets complicated, but that would not appear to be the situation here.

I think the main problems are in

  1. Setting up the router for external control
  2. Getting the right app for Android.

Many thanks to you and using bare bones arduino with nRF24 is a good suggestion, if there is no other solution.