Я бы на самом деле предложил LiFePo4 для чего угодно. Мало того, что это безопаснее, так что одно неверное движение не вызовет инферно, но оно будет длиться в два-четыре раза дольше при CONST небольшого дополнительного размера и веса.
Так как вы просто запускаете Arduino, я бы использовал только одну отдельную ячейку и избежал проблем с балансом ячеек.
Я бы использовал буст-регулятор, чтобы повысить напряжение от ячейки до требуемых 5В.
Чтобы действительно зарядить батарею, я бы, вероятно, использовал бы дешевую плату зарядного устройства ebay CC-CV и установил бы напряжение примерно на 0,15 В ниже максимального значения для вашей жизни (вы теряете только 10% энергии, но вы заставляете батарею работать дольше ) и установите ток, соответствующий вашей панели и батарее.
Если ваша цепь потребляет энергию, когда зарядное устройство заряжается, ваша цепь возьмет то, что ей нужно, и любые лишние зарядные устройства попадут в батарею.
Вам может понадобиться диод, чтобы батарея не разряжалась обратно через зарядное устройство.
Используйте защитную печатную плату, как вы можете получить от batteryspace, или, что еще лучше, защищенный ресурс с встроенной печатной платой.
Помните, что размер вашей солнечной панели должен быть достаточным для поддержания цепи в рабочем состоянии. Даже с защищенными ячейками переразряд убивает.
Что я действительно хотел бы сделать, так это спроектировать плату контроля заряда lifepo4, в которой все это было бы в одном устройстве, поскольку, кажется, все этого хотят ...