Jump to content

Silverwolf_7

Member
  • Posts

    121
  • Joined

  • Last visited

Posts posted by Silverwolf_7

  1. I've been tasked with designing a network for the floor of a small CNC shop. This network needs to be isolated from the main LAN IP space so that is can be added to the current network with minimal configuration. Each CNC cell needs it's own identical subnetwork that can be easily duplicated as cells are added. This network handles control communication between devices within the cell and isolates each cell from any others within the shop to prevent the possibility of one cell's devices conflicting with another's. These devices do not need internet connectivity however the ability to enable it temporarily if necessary (machine updates?) would be nice. The only external connectivity that is needed from inside the cell is to a local server. This server will need internet access as well as access to a computer within each cell to access the cell's current status. Here's a diagram of the basic design.

     

    I've placed a https://www.antaira.com/products/Wireless-Routers/ARS-7235-AC in each cell as a NAT device. Another will be placed on the network layer above all the cells to directly connect to the main shop network.

     

    My main questions are:

    Does it make sense to setup a network this way?

    How to grant internet connectivity to devices within these subnets?

     

     

     

    image.png

  2. I have a Dell xps 9510 that has had 4 different motherboards installed. 2 for power rail problems. These seem to be resolved now. However now Bluetooth is disabled within the bios. There is no way to enable it as the option is greyed out. I am aware this is selected when the service tag is programmed by the tech. Did they just screw up programming twice or is it possible that once Bluetooth was disabled once now this setting is following the harddrive? Windows was not reinstalled and everything else seems to work fine.

  3. I am trying to send messages from a client to a server using sockets. I have sent data however I would like the sever to listen constantly for data and print out each message as it comes in. The code works for the first message however for some reason all subsequent messages are not read. It's almost as if conn.recv(BUFFER_SIZE) is not blocking.

    Server code:

    import socket, time
    
    TCP_IP = 'localhost' # this IP of the Raspberry Pi or the device receiving messages
    TCP_PORT = 40000
    BUFFER_SIZE = 64 #can lower for faster response
    
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    #s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, True)
    s.bind((TCP_IP, TCP_PORT))
    s.listen(1)
    
    conn, addr = s.accept()
    conn.setblocking(True)
    print ('Connection address:', addr)
    count = 0
    while True:
        robotMsg = conn.recv(BUFFER_SIZE)
        print('Recv message')
        if not robotMsg:
            print('Nothing read')
            count = count + 1
            time.sleep(1)
            if count > 5:
                conn.close()
                break  
        else:    
            robotMsg = robotMsg.decode('utf-8')
            print(robotMsg)
    
            if robotMsg == 'start':
                print('starting data recording')
            elif robotMsg == 'resume':
                print('resuming last file')
            elif robotMsg == '1_data':
                print('reading 1')
            elif robotMsg == '2_data':
                print('reading 2')
            elif robotMsg == 'exit':
                print('closing server')
                break
            else:
                print('unknown command')
            time.sleep(1)   
        
    conn.close()

    Client code:

    import socket, time
    
    TCP_IP = 'localhost' # this IP of the RaspberryPi or the device receiving messages.
    TCP_PORT = 40000
    BUFFER_SIZE = 64
    MESSAGE = 'start'
    count = 1
    
    while count < 10:
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.connect((TCP_IP, TCP_PORT))
        s.send(MESSAGE.encode('utf-8')) #.encode needed to send bytes
        print('Sent Message: ', MESSAGE)
        count = count + 1
        time.sleep(3)
    
    print ('end')
    exit = 'exit'
    s.send(exit.encode('utf-8'))
    s.close()

     

  4. On 6/25/2017 at 3:24 AM, Hackentosher said:

    That is... strange. My first guess is your receiver is dropping packets, what radio link system are you using and are your RX antennas okay? Also what flight controller? I don't think that's the issue, but... maybe...

     

    I have a Turnigy 9x flashed with openTx and an FrSky DJT module. The receiver is a D4R-2 and the antennas look fine as they're protected with heat shrink and zipties. Flight controller is an Omnibus F4 Pro V2. It has an sd card slot so I'll plug one in and see what the black box says if the issue happens again.

     

    UPDATE: I took apart the quad to add a 12v regulator and it turns out one of the antennas had a crease in the active end. Switched it out with one from another frsky reciever and everything seems to be working now. I'm not sure if it was cut through all the way but it seems to have been the source of the issue.

  5. So I built a Tiny Whoop about a month ago with an AcroWhoop v2 FC with the FrSky receiver. Recently I've been having an intermittent issue where occassionally when I am getting ready to fly the whoop will receive delayed commands from my transmitter (Turnigy 9x flashed with openTx and an FrSky Djt module). I connected it to BetaFlight and checked the reciever tab and saw all the channels bouncing all over the place from center (1500). If I arm it the whoop will idle but after disarming the whoop will remain armed for a few seconds. Re binding seems to fix the issue but it always comes back. Any Idea what causes this?

  6. If the relay needs 24v to energize you're better off just using the mosfet. If the relay can be energized with 5v its as simple as connecting one side of the coil to the ground pin on the arduino and the other side to any writable pin. Then just use a digitalwrite() to activate the pin energizing the relay. 

  7. Regardless of what they are intended for, all a simple PDB does is act as a busbar for the battery. All of the positive leads are connected together and all of the negative leads are connected together. You could connect the battery directly to an esc pad and it would still work the same way. My first tricopter used 2 wires tied together in the middle for a PDB. More complex PDBs will tap the battery contacts in parallel to allow for regulated voltage for leds, cameras, a vtx or voltage monitoring in addition to the simple power distribution to the escs. 

  8. https://www.amazon.com/SUPERNIGHT-Waterproof-Flexible-Controller-included/dp/B00B2F3KDQ/ref=sr_1_9?ie=UTF8&qid=1492643689&sr=8-9&keywords=rgb%2Bled%2Bstrips&th=1

     

    These have worked fine for me. Get the waterproof ones the rubber coating makes them less likely to be caught on something. Make sure you get a controller and power supply for them. And look for true rgb leds some strips have seperate red, green, and blue leds and give a weird alternating color effect.   

  9. 3d printing a part will be fine, the set screw is more for if the motor is on its side. As for the regulator you will need to power the arduino with 5v as well as whatever voltage the stepper driver needs. Most arduinos will burn up if you try to run 12v through them. Assuming the stepper driver needs 12v you will either need 2 powersupplies (one 5v the other 12) or a regulator to bring the 12v down to 5v for the arduino.

×