Welcome to Hackster!
Hackster is a community dedicated to learning hardware, from beginner to pro. Join us, it's free!
Mario Soranno
Published

Everyday Work Safety

I have designed a safety system for remote controls that immediately turns off the vehicle when the operator puts down the remote control

543

Things used in this project

Hardware components

Infineon CY8CKIT-005
Ɨ1
10UF 0805
Ɨ2
1UF 0603
Ɨ2
100NF 0603
Ɨ3
2,2NF 0603
Ɨ4
LL4148-GS08
Ɨ1
HSMH-C120
Ɨ1
PJA3440_R1_00001
Ɨ2
RC0603FR-07560RL
Ɨ4
ERJ-3EKF4701V
Ɨ2
RC0603FR-10330RL
Ɨ2
AC0603FR-101KL
Ɨ3
CR0603-FX-4702ELF
Ɨ2
9007-05-00
Ɨ1
BD50FC0FP-E2
Ɨ1
CY8C4149AZI-S593
Ɨ1

Software apps and online services

ModusToolboxā„¢ Software
Infineon ModusToolboxā„¢ Software

Hand tools and fabrication machines

Soldering iron (generic)
Soldering iron (generic)
Solder Wire, Lead Free
Solder Wire, Lead Free
PCB Holder, Soldering Iron
PCB Holder, Soldering Iron
3D Printer (generic)
3D Printer (generic)
Hot glue gun (generic)
Hot glue gun (generic)

Story

Read more

Custom parts and enclosures

Handle Of The Radio Control

Handle Of The Radio Control

handle-of-the-radio-control & PCB

handle-of-the-radio-control & PCB

handle-of-the-radio-control 1

handle-of-the-radio-control 1

handle of the radio control 2

handle of the radio control 2

handle of the radio control

handle of the radio control

3D PCB - Everyday Work Safety

3D PCB - Everyday Work Safety

Schematics

Electrical schematic

Electrical schematic

PCB Gerber - Everyday Work Safety

PCB Gerber - Everyday Work Safety

BOM - Everyday Work Safety

BOM - Everyday Work Safety

Code

main.c - Everyday Work Safety

C/C++
main.c
...


#define ON          (0U)
#define OFF         (1U)

static void relay_control(void);


...

 for (;;)
    {
        if(CY_CAPSENSE_NOT_BUSY == Cy_CapSense_IsBusy(&cy_capsense_context))
        {
            /* Process all widgets */
            Cy_CapSense_ProcessAllWidgets(&cy_capsense_context);

            /* Turns Relay ON/OFF based on button status */
            relay_control();

            /* Establishes synchronized communication with the CapSense Tuner tool */
            Cy_CapSense_RunTuner(&cy_capsense_context);

            /* Start the next scan */
            Cy_CapSense_ScanAllSlots(&cy_capsense_context);
        }
    }



...


/*******************************************************************************
* Function Name: relay_control
********************************************************************************
* Summary:
* Turning Relay ON/OFF based on button status
*
*******************************************************************************/
static void relay_control(void)
{

	if((MSC_CAPSENSE_WIDGET_INACTIVE == Cy_CapSense_IsWidgetActive(CY_CAPSENSE_BUTTON0_WDGT_ID, &cy_capsense_context)) &&
			(MSC_CAPSENSE_WIDGET_INACTIVE == Cy_CapSense_IsWidgetActive(CY_CAPSENSE_BUTTON1_WDGT_ID, &cy_capsense_context)) &&
			(MSC_CAPSENSE_WIDGET_INACTIVE == Cy_CapSense_IsWidgetActive(CY_CAPSENSE_BUTTON2_WDGT_ID, &cy_capsense_context)) &&
			(MSC_CAPSENSE_WIDGET_INACTIVE == Cy_CapSense_IsWidgetActive(CY_CAPSENSE_BUTTON3_WDGT_ID, &cy_capsense_context)))
	    {
	       Cy_GPIO_Write(REL_PORT, REL_NUM, OFF);
	    }
	else
	    {
	       Cy_GPIO_Write(REL_PORT, REL_NUM, ON);
	    }
}

...

Everyday Work Safety

Everyday Work Safety - GitHub

Credits

Mario Soranno
9 projects • 24 followers
I have a Bachelor's Degree in Industrial Engineering - Electronics. I am an expert in hardware design, I can program in C/C++,Python and ROS
Contact

Comments

Please log in or sign up to comment.