Пример #1
0
    def _run(self):
        self.is_running = True
        while (self.is_running):
            error = sensel.readSensor(self.handle)
            (error, num_frames) = sensel.getNumAvailableFrames(self.handle)
            for i in range(num_frames):
                self._sync()
                timestamp = time.perf_counter()
                error = sensel.getFrame(self.handle, self._frame)
            R = self.info.num_rows
            C = self.info.num_cols
            force_array = np.zeros((R, C))
            for r in range(R):
                force_array[r, :] = self._frame.force_array[r * C:(r + 1) * C]
            force_array *= 0.2
            frame = FrameData(force_array, timestamp)

            for i in range(self._frame.n_contacts):
                c = self._frame.contacts[i]
                x = c.x_pos / Board.MAX_X
                y = c.y_pos / Board.MAX_Y
                contact = ContactData(c.id, c.state, x, y, c.area,
                                      c.total_force, c.major_axis,
                                      c.minor_axis, c.delta_x, c.delta_y,
                                      c.delta_force, c.delta_area)
                frame.append_contact(contact)
            self.frames.append(frame)
            self.updated = True

        self._closeSensel()
Пример #2
0
def scanFrames(frame, info):
    error = sensel.readSensor(handle)
    (error, num_frames) = sensel.getNumAvailableFrames(handle)

    for i in range(num_frames):
        #print(num_frames)

        error = sensel.getFrame(handle, frame)
        printFrame(frame, info)
Пример #3
0
 def read_frames(self):
     logger.debug('getting frame from Morph {}'.format(self.serial_num))
     logger.debug('reading frames from sensor.')
     self.close_on_error(sensel.readSensor(self.handle))
     logger.debug('checking available frames...')
     available_frames = self.close_on_error(
         sensel.getNumAvailableFrames(self.handle))
     logger.debug('{} frames available'.format(available_frames))
     return (self.get_frame() for _ in range(available_frames))
Пример #4
0
def scan_frames(handle, frame, info):
    error = sensel.readSensor(handle)
    error, num_frames = sensel.getNumAvailableFrames(handle)
    # print('Available num frames:', num_frames)
    f_image = np.zeros((info.num_rows, info.num_cols))
    for i in range(num_frames):
        error = sensel.getFrame(handle, frame)
        # print('Content bit mask: ', frame.content_bit_mask)
        f_image = print_frame(frame, info)
    return f_image
Пример #5
0
def scan_frames(frame, info):
    error = sensel.readSensor(handle)
    error, num_frames = sensel.getNumAvailableFrames(handle)
    for i in range(num_frames):
        error = sensel.getFrame(handle, frame)
        do_frame(frame, info)