[vc_row][vc_column][vc_column_text]There are two kinds of linker relay, one is an electromagnetic relay (linker Relay), mechanical properties, and the otheris solid state relays (linker SSR), the electronic properties. Their maximum current is different. Linker Relay can control 240V AC or DC 10A, linker SSR can control 240V AC or DC 2A. Also the control state is different, there are two stares about linker Relay that are long closed and permanently attached , linker SSR only a normally closed state.
In the circuitis, Relay is mainly responsible for the security, safety, widely used in modern industrial fields.
Here I use the linker Relay, do the intermediate control, control the LED.Because VCC and GND interface are not enough, I used GPIO Interface Analog[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column width=”1/1″][vc_tour][vc_tab title=”Parts list” tab_id=”1394008633-1-61″][vc_column_text]Button× 1
Electromagnetic relay ×1
Analog voltage electrical equipment led lights ×1
Male to Female Dupont Line×9
Female-female DuPont line×1
Pcduino ×1
[/vc_column_text][/vc_tab][vc_tab title=”Wiring diagram” tab_id=”1394008633-2-60″][vc_column_text]![]()
- GND of Linker Button -> Pin GPIO 0 of pcDuino
- VCC of Linker Button -> Pin GPIO 1 of pcDuino
- SIG of Linker Button -> Pin GPIO 2 of pcDuino
- GND of Linker Relay -> Pin GND of pcDuino
- VCC of Linker Relay -> Pin 5V of pcDuino
- SIG of Linker Relay -> Pin GPIO 9 of pcDuino
- GND of Linker LED -> Pin GND of pcDuino
- SIG of Linker LED -> COM port of Linker Relay
- NO of Linker Relay -> PIn GPIO 13 of pcDuino
[/vc_column_text][/vc_tab][vc_tab title=”Test code” tab_id=”1394010392357-2-2″][vc_column_text]GPIO Entity
package com.test;import java.io.BufferedReader;public class GPIO_Pin { private String modeURI = "/sys/devices/virtual/misc/gpio/mode/"; private String statusURI = "/sys/devices/virtual/misc/gpio/pin/"; private int pin = 0; public static final String HIGH = "1", LOW = "0", INPUT = "0", OUTPUT = "1", INPUT_PU = "8"; public GPIO_Pin(int pin) { modeURI += "gpio" + pin; statusURI += "gpio" + pin; this.pin = pin; } public GPIO_Pin(String pin) { // Finalize file paths modeURI += "gpio" + pin; statusURI += "gpio" + pin; this.pin =Integer.parseInt(pin); } public int getPin() { return pin; } public void overrideURI(String uri) { modeURI = uri + "mode/gpio" + pin; statusURI = uri + "pin/gpio" + pin; } public void setMode(String mode) { writeToFile(getModeURI(), mode); } public void set(String state) { writeToFile(getStatusURI(), state); } public void setHIGH() { writeToFile(getStatusURI(), HIGH); } public void setLOW() { writeToFile(getStatusURI(), LOW); } public void setModeINPUT() { writeToFile(getModeURI(), INPUT); } public void setModeOUTPUT() { writeToFile(getModeURI(), OUTPUT); } public void setModeINPUT_PU() { writeToFile(getModeURI(), INPUT_PU); } public String getModeURI() { return modeURI; } public String getStatusURI() { return statusURI; } public String getPinMode() { try { BufferedReader reader = new BufferedReader(new FileReader(getModeURI())); String data = reader.readLine(); reader.close(); return data; } catch (IOException e) { } return ""; } public String getPinStatus() { try { BufferedReader reader = new BufferedReader(new FileReader(getStatusURI())); String data = reader.readLine(); reader.close(); return data; } catch (IOException e) { } return ""; } private void writeToFile(String URI, String data) { try { File file = new File(URI); file.delete(); File newFile = new File(URI); newFile.createNewFile(); FileWriter writer = new FileWriter(URI); writer.write(data); writer.close(); } catch (IOException e) { e.printStackTrace(); } }}package com.test;public class test { public static void main(String[] args) throws InterruptedException { // TODO Auto-generated method stub GPIO_Pin Relaypin=new GPIO_Pin(9); GPIO_Pin buttenpin=new GPIO_Pin(2); GPIO_Pin pin0=new GPIO_Pin(9); GPIO_Pin pin1=new GPIO_Pin(9); GPIO_Pin pin13=new GPIO_Pin(9); Relaypin.setModeOUTPUT(); buttenpin.setModeINPUT(); pin0.setModeOUTPUT(); pin0.setLOW(); pin1.setModeOUTPUT(); pin1.setHIGH(); pin13.setModeOUTPUT(); pin13.setHIGH(); while (true) { if("1".equals(buttenpin.getPinStatus())){ Relaypin.setHIGH(); }else{ Relaypin.setLOW(); } Thread.sleep(400); } }}[/vc_column_text][/vc_tab][vc_tab title=”The results” tab_id=”1394010393367-3-3″][vc_column_text]![]()
![]()
![]()
[/vc_column_text][/vc_tab][/vc_tour][/vc_column][/vc_row]

Leave a Reply
You must be logged in to post a comment.