Дубликатор домофонных ключей на ардуино

bort707

★★★★★★✩
21 Сен 2020
3,064
912
упорядочить немного этот вид деятельности
простите, а кто вы такой, чтобы что-то "упорядочить"? Глава муниципалитета?
И что там особо упорядочивать :), когда дубликатор может собрать любой школьник? Какой нафик "социальный проект"? Бизнес этот и так на нуле, копию можно сделать на любом углу, какой стартап вы тут надеетесь поднять? смешно
 

Vend

✩✩✩✩✩✩✩
16 Дек 2019
12
0
простите, а кто вы такой, чтобы что-то "упорядочить"? Глава муниципалитета?
И что там особо упорядочивать :), когда дубликатор может собрать любой школьник? Какой нафик "социальный проект"?
Социальный проект это так, к слову, и он совсем другого направления, о нем я не буду…

А если без эмоций, то я устанавливаю точки и люди говорят, что хорошо теперь, а то не знали, где поблизости можно было сделать ключи и приходилось ехать полгорода

С чем я столкнулся: реклама вообще на нуле, или текст такой, что без запятых, без точек и не разберешь и не запоминается… и максимум на одном двух ресурсах. А отзывы которые не удалили на ресурсах «телефон не отвечает, зачем вообще их указывать»… или «грубо так отвечают не могут ответить нармально»

Мой друг попросил меня сделать ключ, приехал сам ко мне и предложил установить точку в Минимаркете в их многоэтажке. Я посмотрел и нашел, что в соседнем доме есть мастерская по изготовлению ключей. Хотя мой друг весь город хорошо знает, а этого не знал… так и ходил бы с ключом с изолентой обмотанным, т.к. бутики до 18.00ч в основном и после работы он не успевал…

Например, о доставке ключей и изготовлении на месте у подъезда у нас такой услуги нет вообще

У нас по крайней мере есть что упорядочить, точки планируем во всех Супермаркетах и Торговых домах, реклама мощная, единый контактный центр, доставка по городу, с 9 до 20.30ч. а в идеале круглосуточно когда карантин снимут

Бизнес этот и так на нуле, копию можно сделать на любом углу, какой стартап вы тут надеетесь поднять? смешно
Изучал количество точек изготовления во многих крупных городах, таких как Казань, Челябинск, Самара, Омск, Ростов-на-Дону, Ярославль, Белгород от 2255 до 3000 квартир на одну мастерскую, т.е. цифры охвата такие же как и в нашем городе. Кроме Москвы и Санкт-Петербурга там охват в 2 раза больше, но это наверно потому что там больше всего дубликаторов и производят.

Так что можно поработать, чем я как раз и занимаюсь
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912
от 2255 до 3000 квартир на одну мастерскую
вы бы к этим цифрам прикинули потребность в услуге -стало бы понятно, что 3 тыс квартир на точку - это совсем не много.
По моей статистике, в давно заселенных домах потребность в дубликатах 30-40 штук на сотню квартир в год.
Если перемножить на ваши 3000 - получается одна мастерская в год получает заказов дай бог на тысячу ключей
Делают аж по 3-4 ключа в день :) - просто офигенная загрузка

Интересно, сколько вы с одного ключа планируете зарабатывать, если задумываетесь о доставке и изготовлении на месте? :) Вы ничего не перепутали? Даже если драть с людей по 200р за ключик - никакой прибыли тут и в помине нет.
Точки в каждом минимаркете... ну-ну.. откуда ж столько заказчиков найти. Не каждый день люди ключи теряют :)
 

Vend

✩✩✩✩✩✩✩
16 Дек 2019
12
0
Делают аж по 3-4 ключа в день :) - просто офигенная загрузка
С четвертой частью домофонных мастерских нашего города разговаривал с глазу на глаз, все сказали в основном 5-10 максимум 12, хотя бывают случаи и меньше 5 ключей за день
Но даже если будет 3 ключа в день и сеть из 100 точек то неплохо. Вопрос аренды площади и зарплаты тоже продуман.
Если все таки найдутся желающие на старте посодействовать буду рад
 

валера444

✩✩✩✩✩✩✩
25 Апр 2023
1
0
Оформи код соответствующим тэгом и дай пояснение что ты хочешь сказать этим сообщением
вот
C++:
#include <LiquidCrystal.h>

#include <SoftwareSerial.h>

#include <SIM800L.h>

#include <EEPROM.h>

#include <Wire.h>



// Initialize the LCD

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);



// Initialize the SIM800L module

SoftwareSerial sim800l(2, 3);

SIM800L gsm(sim800l);



// Initialize variables

int contact_tm_count = 0; // number of copied TouchMemory contacts

int rfid_count = 0; // number of copied RFID keys

int max_records = 100; // maximum number of records to store

int records_stored = 0; // number of records currently stored

String records[max_records][4]; // 2D array to store records: {ID, type, location, timestamp}



void setup() {

  // Initialize the LCD

  lcd.begin(16, 2);

  lcd.print("Device Manager");

  lcd.setCursor(0, 1);

  lcd.print("Initializing...");



  // Initialize the SIM800L module

  sim800l.begin(9600);

  gsm.init();



  // Initialize the EEPROM

  EEPROM.begin(512);



  // Load stored records from EEPROM

  for (int i = 0; i < max_records; i++) {

    for (int j = 0; j < 4; j++) {

      records[j] = String(EEPROM.read(i * 4 + j));

    }

    if (records[0] != "") {

      records_stored++;

    }

  }

}



void loop() {

  // Check for new records

  String id = ""; // ID of the new record

  String type = ""; // Type of the new record (TouchMemory or RFID)

  String location = ""; // Location of the new record

  String timestamp = ""; // Timestamp of the new record

  if (/* check for new TouchMemory contact */) {

    // Copy the TouchMemory contact

    contact_tm_count++;

    id = "TM" + String(contact_tm_count);

    type = "TouchMemory";

    location = /* get location */;

    timestamp = /* get timestamp */;

  } else if (/* check for new RFID key */) {

    // Copy the RFID key

    rfid_count++;

    id = "RFID" + String(rfid_count);

    type = "RFID";

    location = /* get location */;

    timestamp = /* get timestamp */;

  }

 

  // Store the new record if there is space

  if (records_stored < max_records) {

    records[records_stored][0] = id;

    records[records_stored][1] = type;

    records[records_stored][2] = location;

    records[records_stored][3] = timestamp;

    records_stored++;

    // Save the new record to EEPROM

    for (int i = 0; i < 4; i++) {

      EEPROM.write((records_stored - 1) * 4 + i, records[records_stored - 1].charAt(0));

    }

    EEPROM.commit();

  }



  // Send the new record to the Android app

  String message = id + "," + type + "," + location + "," + timestamp;

  if (/* check for internet connection */) {

    /* send the message via internet */

  } else {

    /* send the message via SMS */

  }



  // Display the latest record on the LCD

  lcd.clear();

  lcd.setCursor(0, 0);

  lcd.print("Latest Record:");

  lcd.setCursor(0, 1);

  lcd.print(id + " " + type);

 

  // Check for notifications to send

  int notifications_sent = 0;

  for (int i = 0; i < max_records; i++) {

    if (records[0] != "") {

      if (/* check if the record is close to max_records */) {

        if (/* check if the user should be notified */) {

          /* send notification */

          notifications_sent++;

        }

      }

    }

  }

}



// Android app functions

/* function to connect to the device manager via internet or Wi-Fi */

/* function to retrieve the latest records */

/* function to retrieve reports */

/* function to set notification settings */

/* function to set location of devices on Google Maps */

/* function to search devices by location or name */

/* function to set access levels */
 
Изменено: